假设我有两个名为 value1 和 value2 的变量。这些值将由用户输入,但让我们假设他们已经输入了这些值
var value1 = 5;
var value2 = 7;
var comparison = .785
我只想比较值加上或减去比较,因此当代码显示输出时,它只显示 5 + 或 - .785 和 7 + 或 - .785 的值
对于某些上下文,以下代码是从 json 对象中提取信息,该对象具有两个单独的数字列表,例如 number1 和 number2 以及大量其他信息,但不用担心其中任何一个,一切正常
$("#createlist").click(function() {
var value1 = Number($("#value1").val());
var value2 = Number($("#value2").val());
var comparison = .785
$.getJSON("get_divvy_data.php", null, function(data) {
var total_bikes_available = 0;
$("#stationtable .stationrow").remove();
$.each(data.stationBeanList, function(index, station) {
下一部分是我遇到问题的地方。
if( station.number1 is <= value1 + - comparison && station.number2 is <= value2 + - comparison) {
//do something
}
我只是不知道如何有效地编写if语句和比较。
最佳答案
一种可能的方法:
if (Math.abs(value1 - station.number1) <= comparison
&& Math.abs(value2 - station.number2) <= comparison) {
//...
}
...但请注意 float 学缺陷可能导致的边缘情况。例如:
var value = 0.9;
var reference = 0.7;
var delta = 0.2;
console.log(value - reference <= delta); // false
关于javascript - 如何比较一个数字加上或减去另一个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22974583/