- Введение
- Наследование
- MK.Object
- MK.Array
(Напомню, репозиторий находится здесь)
Приветствую всех. Предыдущую статью я закончил на том, что нам может потребоваться массив данных. Массивом в проекте Matreshka.js являются экземпляры класса MK.Array
. Чем они отличается от обычных массивов? Почти ничем. Прототип MK.Array
содержит все методы, которые есть у «традиционного» массива, конструктор принимает те же аргументы, что и оригинальный Array
, а экземпляры имеют несколько интересных особенностей.
MK.Array
— это массив на стероидах, который умеет:
- Всё, что умеет
Array
- Генерировать события при модификации
- Использовать цепочечный вызов методов там, где это возможно
- Умеет то, что умеет Матрешка: привязывать элементы к свойствам и генерировать кастомные события
Код для привлечения внимания:
mkArray
.on( 'push', function() {
alert( 'push' );
})
.push( 1, 2, 3, 4 )
.unshift( 0 )
.shift()
.pop()
.push( 5 )
.forEach( function() { ... } )
.sort()
.reverse()
;