Я знаю, что массивы Javascript на самом деле являются объектами, и поскольку они являются объектами, они могут иметь свойства. Вот пример:Есть ли недостатки для хранения свойств в массивах Javascript?
var a = [1, 2, 3];
a.currentIndex = 2;
a.next = function() { ... };
a.prev = function() { ... };
a.length // returns 3
Мне кажется, что это может пригодиться. Я вижу многочисленные причины, по которым вы можете захотеть сохранить функции состояния или утилиты на самом массиве, а не на какой-либо другой переменной. Это даже кажется лучше, чем иметь массив как свойство объекта с другим материалом, хранящимся на этом объекте.
Вот мой вопрос:
Кто-нибудь знает какие-либо проблемы с хранением свойств в массиве JavaScript? Он работает во всех браузерах? Есть ли какие-либо доказательства того, что это изменится с будущими версиями Javascript? Есть ли общая мудрость относительно того, является ли это хорошей практикой?
(п.с. Для записи, мне не нужно перебирать массив с для ... в цикле. Я понимаю, что такой цикл будет включать в себя свойство, а)