| 0在Javascript中做什么?

Luk*_*uke 2 javascript asm.js

我最近一直在研究要在项目中使用的asm.js,而且我注意到,asm.js编译后的代码通常会以结束一个语句|0;,甚至在该语句中看起来似乎是多余的i = i|0;

这不是我以前在Javascript代码中遇到的东西。这是为了什么

编辑

我不相信这是重复的。我知道是位还是位。我在这里专门问为什么在分配之前可能会使用0或0。这有什么目的?

Nin*_*olz 5

转换为整数并按位或进行应用0。基本上是的简写形式Math.floor()

  • 注意,与此同时,未定义的NaN和null也将变为0!:-) (2认同)