class Types/collection:List

Список - коллекция c доступом по индексу.

Примечание

Основные возможности:

  • последовательный перебор элементов коллекции - поддержка интерфейса Types/collection:IEnumerable;
  • доступ к элементам коллекции по индексу - поддержка интерфейса Types/collection:IList;
  • поиск элементов коллекции по значению свойства - поддержка интерфейса Types/collection:IIndexedCollection.

Создадим список, в котором в качестве сырых данных используется plain JSON (адаптер для данных в таком формате используется по умолчанию):

import {List} from 'Types/collection';

const characters = new List({
    items: [{
        id: 1,
        firstName: 'Tom',
        lastName: 'Sawyer'
    }, {
        id: 2,
        firstName: 'Huckleberry',
        lastName: 'Finn'
    }]
});
console.log(characters.at(0).firstName); // 'Tom'
console.log(characters.at(1).firstName); // 'Huckleberry'

Опции

protected

Элементы списка

Обработчик изменения версии

VersionableMixin

Поля

protected

Индексатор элементов.

Экземпляр был разрушен

DestroyableMixin

Медиатор, отвечающий за связи между сущностями

ManyToManyMixin
deprecated
protected
ReadWriteMixin
protected

Метод реализован в OptionsToPropertyMixin.

SerializableMixin

Уникальный номер инстанса

SerializableMixin
protected

Название класса-конструктора.

SerializableMixin

Методы

protected

Добавляет отношение с другой сущностью

ManyToManyMixin

Проверяет, что в прототипе указано имя модуля для RequireJS, иначе не будет работать десериализация

SerializableMixin
protected

Рекурсивно уведомляет родительские сущности об изменении дочерней

ManyToManyMixin
protected

Очищает индексатор коллекции

Создает посредника для установления отношений с детьми

ManyToManyMixin
protected

Возвращает индексатор коллекции

protected

Возвращает посредника для установления отношений с детьми

ManyToManyMixin
protected

Возвращает опции объекта

OptionsToPropertyMixin

Возвращает всё, что нужно сложить в состояние объекта при сериализации, чтобы при десериализации вернуть его в это же состояние

SerializableMixin
protected

Возвращает признак наличия посредника

ManyToManyMixin

Возвращает признак наличия одинакового посредника

ManyToManyMixin

Check if the instance was unserialized.

SerializableMixin
protected

Проверяет корректность индекса

protected

Приводит переденные элементы к массиву.

Уведомляет дочерние сущности об изменении родительской

ManyToManyMixin
protected

Переиндексирует список

protected

Удаляет отношение с другой сущностью

ManyToManyMixin
protected

Устанавливает посредника для установления отношений с детьми

ManyToManyMixin

Проверяет сериализованное состояние перед созданием инстанса. Возвращает метод, восстанавливающий состояние объекта после создания инстанса.

SerializableMixin
protected

Вызывает метод splice.

Добавляет элемент в список.

При недопустимом at генерируется исключение.

IList

Добавляет элементы другой коллекции к концу списка.

IList

Заменяет список другой коллекцией.

IList

Возвращает элемент по позиции.

При недопустимом index возвращает undefined.

IList

Очищает список.

IList

Создает новый объект, который является копией текущего экземпляра.

ICloneable

Конструктор объекта, принимающий набор опций в качестве первого аргумента

OptionsToPropertyMixin

Разрушает экземпляр

DestroyableMixin

Перебирает все элементы коллекции, начиная с первого. Цикл проходит полное количество итераций, его невозможно прервать досрочно.

IEnumerable

Конструирует экземпляр класса из сериализованного состояния

SerializableMixin

Возвращает количество элементов списка

IList

Возвращает энумератор для перебора элементов списка.

Пример использования можно посмотреть в модуле Types/collection:IEnumerable.

IEnumerable

Возвращает позицию первого вхождения элемента в список.

IList

Возвращает индекс первого элемента с указанным значением свойства. Если такого элемента нет - вернет -1.

IIndexedCollection

Возвращает индексы всех элементов с указанным значением свойства. Если таких элементов нет - вернет пустой массив.

IIndexedCollection

Возвращает версию объекта.

Версия соответствует некому состоянию объекта и меняется при изменении как то значимых свойств объекта, например для рекорда это будет изменение значений полей.

IVersionable

Проверяет эквивалентность текущего объекта другому объекту.

IEquatable

Перемещает элемент с одной позиции на другую.

При недопустимом from или to генерируется исключение.

IList

Добавляет элементы другой коллекции в начало списка.

IList

Удаляет элемент из списка (первый найденный). Элементы, следующие за удаленным, смещаются вверх.

IList

Удаляет элемент в указанной позиции. Элементы, следующие за удаленным, смещаются вверх.

При недопустимом index генерируется исключение.

IList

Заменяет элемент в указанной позиции.

При недопустимом at генерируется исключение.

IList

Возвращает сериализованный экземпляр класса

SerializableMixin