Это мой код:
$.each(3, function(n) { alert(n); });
Я хочу предупредить три раза, но это не работает. Что я могу сделать?
each должен работать на объекте.Попробуйте создать массив длиной 3, например,
each
$.each(new Array(3), function(n){alert(n);} );
Конечно, я не вижу причины избегать нормального Javascript.
for (var n = 0; n < 3; ++ n) alert(n);
Поздний ответ, но другой вариант - создать прототип 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 под названием Плохая практика: расширение собственных прототипов .
RightJS делает что-то подобное.(Другие, вероятно, тоже.)
Вы не можете. $.each может перебирать только массивы или объекты. Вы ищете петлю for:
$.each
for
for(var n = 0; n < 5; n++) { alert(n); }