Array.each — выдаёт ошибку
Есть ф-ция Array.each
Array.prototype.each = function (handler) {
for (var i = 0; i < this.length; i++) {
handler.call(this[i], i, this[i]);
}
return this;
}
Вызов функции выдаёт ошибку:
[0, 1, 2].each(function (i) {
alert(i);
}); // Uncaught exception: TypeError: Cannot convert '}
//[0, 1, 2, 3, 4, 5, 6, 7, 8]' to object
Почему? P.S. вариант без использования прототипов (при той же схеме реализации) ошибок не выдаёт. Мистика какая-то. |
Array.prototype.each = function (handler) {
for (var i = 0; i < this.length; i++) {
handler.call(this[i], i, this[i]);
}
return this;
};//не забываем писать точку с запятой
[0, 1, 2].each(function (i) {
alert(i);
});
|
Спасибо за помощь.
|
Есть же стандартный forEach.
|
Цитата:
|
Цитата:
|
А ну да.
|
Цитата:
где? покажите |
|
:blink:
Первый раз вижу. |
| Часовой пояс GMT +3, время: 16:06. |