相关疑难解决方法(0)

使用按位OR 0来设置数字

我的一位同事偶然发现了一种方法来使用按位或者:

var a = 13.6 | 0; //a == 13
Run Code Online (Sandbox Code Playgroud)

我们在谈论它并想知道一些事情.

  • 它是如何工作的?我们的理论是使用这样的运算符将数字转换为整数,从而删除小数部分
  • 它有什么优势Math.floor吗?也许它快一点?(双关语不打算)
  • 它有任何缺点吗?也许它在某些情况下不起作用?清晰度是显而易见的,因为我们必须弄清楚,而且,我正在写这个问题.

谢谢.

javascript floating-point bit-manipulation

178
推荐指数
6
解决办法
4万
查看次数

x | 0如何在JavaScript中添加数字?

在我之前的问题中接受的答案(在javascript中生成随机整数的最快方法是什么?),我想知道一个数字如何通过符号丢失其小数| .

例如:

var x = 5.12042;
x = x|0;
Run Code Online (Sandbox Code Playgroud)

那个数字5到底是怎么回事?

更多例子:

console.log( 104.249834 | 0 ); //104
console.log( 9.999999 | 0 );   // 9
Run Code Online (Sandbox Code Playgroud)

javascript integer numbers floor

10
推荐指数
2
解决办法
464
查看次数