这是我的代码:
$.each(3, function(n) {
alert(n);
});
我想提醒三次,但不起作用。我该怎么办?
答案 0 :(得分:19)
each
必须对某个对象进行操作。尝试创建一个长度为3的数组,例如
$.each(new Array(3),
function(n){alert(n);}
);
当然,我没有看到避免正常Javascript的原因。
for (var n = 0; n < 3; ++ n)
alert(n);
答案 1 :(得分:3)
迟到的答案,但另一种选择是使用一种多次调用回调的方法对Number进行原型设计。
Number.prototype.loop = function(cb) {
for (var i = 0; i < this; i++) {
cb.call(this, i);
}
return this + 0;
};
然后这样称呼:
(3).loop(i => alert(i))
然而,应该指出的是,修改这样的标准原型被认为是不好的做法。请参阅此MDN页面上名为Bad practice: Extension of native prototypes的部分。
RightJS做这样的事情。 (其他人也可能。)
答案 2 :(得分:1)
你不能。
$.each
只能迭代数组或对象。
您正在寻找for
循环:
for(var n = 0; n < 5; n++) {
alert(n);
}