javascript - 如何比较一个数字加上或减去另一个数字

标签 javascript jquery compare getjson boolean-logic

假设我有两个名为 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/

相关文章:

javascript - Bootstrap 菜单链接不可点击

C# 最大的 5 个数字只有 If/else

javascript - React,localStorage 在页面刷新时不持久

javascript - 链接 jquery keydown 事件

jquery - 代码在 IE/Opera 中运行多次

java - 比较运算符自定义对象java

python - 字典通过更新合并,但如果值存在则不覆盖

javascript - 如何调试 Jsx 代码

javascript - 是否可以在使用 javascript 延迟的页面中拼出一个单词?

javascript - 使用 Jquery 错误地切换样式表