Добрый день.
Имеется функция
Array.prototype.UContainsCustom = function(closure)
{
var i, pLen = this.length;
for (i = 0; i < pLen; i++)
{
if (closure(this[i])) { return i; }
}
return -1;
}
проблема в том, что из-за этой функции возникают странности в цикле:
console.log(currentOffer.IMAGES);
for (i in currentOffer.IMAGES) {
img = currentOffer.IMAGES[i];
console.log(img);
}
первый console.log показывает
0: "/upload/iblock/0b2/0b223b35e0910f3adb978064abeb335c.jpg"
1: "/upload/iblock/5b7/5b7dfa007d387fab8cca969ca14cdc42.jpg"
тут всё ок.
второй console.log показывает уже показывает странность:
/upload/iblock/0b2/0b223b35e0910f3adb978064abeb335c.jpg
/upload/iblock/5b7/5b7dfa007d387fab8cca969ca14cdc42.jpg
function(closure)
{
var i, pLen = this.length;
for (i = 0; i < pLen; i++)
{
if (closure(this[i])) { return i; }
}
return -1;
}
т.е. на третьей итерации, которой быть не должно, выводится код этой функции.
Как это можно объяснить ?