javascript ->>>(补零右移)详解

标签 javascript

<分区>

Possible Duplicate:
What good does zero-fill bit-shifting by 0 do? (a >>> 0)

我正在查看 array.indexOf(),我知道 IE7 本身并不支持它。我正在阅读 MDC 并看到 their example of how to prototype it进入不支持它的浏览器。我正在通读它,试图了解一切是如何工作的,但我不确定我是否 100% 理解它。造成混淆的主要原因是按位运算符,特别是 >>>。我不确定这个运算符有什么用。以下是他们使用它的方式。谁能准确解释它的用途以及为什么不能 if (t.length === 0)

 var t = Object(this);  
 var len = t.length >>> 0;  
 if (len === 0)  
   return -1; 

最佳答案

它允许在可能具有奇怪的 length 属性的类似数组的对象上调用 indexOf

例如:

var fakeArray = { length: -3, '0': true, '1': false, '2': null };

关于javascript ->>>(补零右移)详解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4151144/

相关文章:

javascript - 如何让 select2 匹配

javascript - 使用 iframe 加载本地文件

javascript - 如何创建选定的项目并输入该项目是什么

javascript - 如何防止在 html 中使用 javascript 单击 Enter 键时移动到下一页?

javascript - 如何 - 在成功提交表单后以 jquery ajax 形式发出警报?

javascript - 正则表达式匹配javascript中的特定字符串

javascript - 使 Logo 在滚动时缩小到导航栏中

通过引用的 JavaScript 数组/函数对象

javascript - 测试计算器的小数字符串

javascript - 无法在React中输入InputType 'text'