我在 node.js 库的源代码中找到了这段代码。~~
对变量有什么影响input
?
inArray[3] = ~~input;
它还以其他方式使用:
return ~~ ((a - b) / 864e5 / 7 + 1.5);
我在 node.js 库的源代码中找到了这段代码。~~
对变量有什么影响input
?
inArray[3] = ~~input;
它还以其他方式使用:
return ~~ ((a - b) / 864e5 / 7 + 1.5);
运算符翻转其~
操作数的位。使用它两次翻转位,然后再次翻转它们,返回与操作数等效的标准 Javascript 值,但以整数形式。它是 的简写parseInt(myInt)
。
这是截断值的一种骇人听闻的方式,有点像Math.floor
这样,除了负数的行为不同。例如,截断 -15.9 ( ~~-15.9
) 给出-15
,但取整它总是朝最小的数字舍入,所以Math.floor(-15.9)
会给出16
。
另一种方法是 OR 与 zero。
var a = 15.9 | 0; //a = 15
它将值转换为整数。