这是prototype框架里的一个函数
function each(iterator, context) {
for (var i = 0, length = this.length >>> 0; i < length; i++) {
if (i in this) iterator.call(context, this[i], i, this);
}
}
不明白为什么要length = this.length >>> 0 ,什么情况下会有用呢?
for (var i = 0, length = this.length >>> 0; i < length; i++) 为什么要这么写 lenght>>>0
答案:2 悬赏:0 手机版
解决时间 2021-03-13 18:02
- 提问者网友:杀手的诗
- 2021-03-13 13:45
最佳答案
- 五星知识达人网友:长青诗
- 2021-03-13 15:22
用0补足的右移运算符
该运算符有两个运算数:a>>>b,当运算数无法被转换成整数时,运算结果的情况与左移运算符相同。
alert("a" >>> 2); // 0
alert("a" >>> NaN); // 0
alert(20 >>> NaN); // 20
该运算符有两个运算数:a>>>b,当运算数无法被转换成整数时,运算结果的情况与左移运算符相同。
alert("a" >>> 2); // 0
alert("a" >>> NaN); // 0
alert(20 >>> NaN); // 20
全部回答
- 1楼网友:深街酒徒
- 2021-03-13 16:03
你是指cars.length 直接换成2对吧?
如果要直接换的话 那应该换成3才对
之所以用cars.length是因为编码讲究的是健壮性、可维护性
如果你再加一个cars[3] = "volvo
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯