javascript - 如何检查变量是否已更改以及它是否大于存储它

标签 javascript compare max setinterval

我正在获取分配给变量 measured_altitude 的设备当前海拔高度(每 500 毫秒更新一次),并且我想保留最大值。这已经达到的值。如果新值 > 旧最大值,则新值 = 最大值,这应该是一个简单的问题。但这似乎不起作用。当与特定值进行比较时,它有效:

例如

setInterval(function () {
    console.log("measured: " + measured_altitude);
    maxH = 50;
    if (measured_altitude > maxH) {
        console.log("new max");
        $("#max-height-value").text(measured_altitude);
        };

}, 1000);

但当我尝试与高度进行比较时,情况并非如此。

这绝对是一个愚蠢的问题,但我已经挠了一个多小时了。

最佳答案

除非我误解了你的目标,否则你需要将新高度分配给 maxH在您的if内并将初始声明移至 setInterval 之外:

var maxH = 50; /* initial value (outside setInterval) */

setInterval(function () {
    console.log("measured: " + measured_altitude);

    if (measured_altitude > maxH) {
        maxH = measured_altitude; /* update if new value is larger */
        console.log("new max");
        $("#max-height-value").text(measured_altitude);
        };

}, 1000);

关于javascript - 如何检查变量是否已更改以及它是否大于存储它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36980175/

相关文章:

javascript - 在循环中附加 mustache 模板

javascript - 如何使用 jQuery 正确制作此动画

javascript - 当递归函数在 javascript 中可数时,最大调用堆栈大小超出 RangeError

mysql - 如何写mysql select获取每日峰值

javascript - 确定元素的位置并触发滚动

c# - 在 ASP.NET 中处理服务器端数据的 Javascript

arrays - perl 比较数组元素并分组

python - 在Python中比较表中的文本

java - 比较java中同一个数组的元素

mysql - 当我选择 MAX(updated_date) 时,其他列的值错误