这条线在做什么? arr.length>>>>> 0
这是做什么用的:
arr.length >>> 0
我为什么要使用它?
What is this for:
arr.length >>> 0
And why should I want to use it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
这是做什么用的:
arr.length >>> 0
我为什么要使用它?
What is this for:
arr.length >>> 0
And why should I want to use it?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
这是无符号右移运算符。在这种情况下(与
0
一起使用时),它确保arr.length
是一个整数,或者更确切地说,计算结果为严格的arr.length
无符号 32 位整数值。 (这意味着它永远不会NaN
,永远不会为负数,并且永远不会有小数部分。)示例:
比较:
它只是为了确保使用正确的长度。
It's the unsigned right shift operator. In this case (when used with
0
) it ensures thatarr.length
is an integer, or rather, evaluates toarr.length
as strict unsigned 32-bit integer value. (This means it's neverNaN
, never negative, and never has a decimal part.)Examples:
Compare to:
It’s just there to ensure that the right length is being used.
确保
.length
是 32 位整数。在大多数实现中,数组索引仅限于 32 位范围(至少在使用 Array.prototype 方法以及 .length 的神奇行为时)。 。
Ensures that
.length
is a 32-bit integer.In most implementations, Array indices are limited to a 32-bit range (at least when working with
Array.prototype
methods, and the magic behaviors of.length
).