Показать сообщение отдельно
  #21 (permalink)  
Старый 28.03.2013, 12:36
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

Сообщение от danik.js
А то, что length не обновляется - это не беда. Работа с коллекцией всеравно идет через методы, а не напрямую.
Так что все-таки надо, массив? Методы массива? Коллекция массивом не является. А свойство length важно не только само по себе, оно необходимо чтобы правильно работали методы массива:
Сообщение от rgl
Дело в том, что у полученного объекта отсутствует свойство length (точнее оно присутствует, но не свое, а наследуемое, а там оно ноль). Из-за этого методы массива не работают.
Вот, например:
var test = {};
test[0] = "a";
test[1] = "bb";
test[2] = "ccc";
test.length = 2;

alert( Array.prototype.slice.call( test, 0 ) );
Ответить с цитированием