Действительно гонево, хуже некуда...
Код:
<script type="text/javascript">
Array.prototype.count = function() {
var result = 0;
for(var i in this) {
if (!this.hasOwnProperty(i)) continue;
result++;
}
return result;
};
</script>
<script type="text/javascript">
var arr = ["один", "два", "три"];
alert(arr.count());
</script>
...отрабатывает верно. Выдает 3 на выходе.
Получается у меня где-то в массив попадает элемент с именем этого метода. Причем если имя метода поменять, то новое имя будет попадать... Придется искать где собака зарыта.
Спасибо за отклики!