nop*_*ope 2 javascript jquery boolean-logic compare getjson
假设我有两个名为value1和value2的变量.这些值将由用户输入,但我们只是假装它们已经存在并且这些值是值
var value1 = 5;
var value2 = 7;
var comparison = .785
Run Code Online (Sandbox Code Playgroud)
我只是想比较值加上或减去比较,所以当代码显示输出时,它只显示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) {
Run Code Online (Sandbox Code Playgroud)
下一部分是我遇到问题的地方.
if( station.number1 is <= value1 + - comparison && station.number2 is <= value2 + - comparison) {
//do something
}
Run Code Online (Sandbox Code Playgroud)
我只是不知道如何有效地编写if语句和比较.
一种可能的方法:
if (Math.abs(value1 - station.number1) <= comparison
&& Math.abs(value2 - station.number2) <= comparison) {
//...
}
Run Code Online (Sandbox Code Playgroud)
...但要注意由浮点数学缺陷引起的可能的边缘情况.例如:
var value = 0.9;
var reference = 0.7;
var delta = 0.2;
console.log(value - reference <= delta); // false
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
650 次 |
最近记录: |