Array.prototype.some
的实施内容
它包含这段令人讨厌的代码:
var t = Object(this);
var len = t.length >>> 0;
for (var i = 0; i < len; i++) {
为什么要拨打len = t.length >>> 0
而不是len = t.length
?
>>> 0
有什么不同?
答案 0 :(得分:7)
执行0位的逻辑(无符号)右移,相当于无操作。但是,在右移之前,它必须将x转换为无符号的32位整数。因此,x>&gt;&gt;的整体效果0将x转换为32位无符号整数。