如何检查变量是否已更改以及是否更大存储它
How to check if a variable has changed and if it is greater store it
我正在获取分配给变量 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);
但当我尝试与高度进行比较时却没有。
绝对是个愚蠢的问题,但我挠头了一个多小时。
除非我误解了你的目标,否则你需要将新高度分配给 if
内的 maxH
并将初始声明移到 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);
我正在获取分配给变量 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);
但当我尝试与高度进行比较时却没有。
绝对是个愚蠢的问题,但我挠头了一个多小时。
除非我误解了你的目标,否则你需要将新高度分配给 if
内的 maxH
并将初始声明移到 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);