Списки (JavaScript)

Списки

> Учебник

Список позволяет хранить несколько значений в определённом порядке.

Создание и использование списка

Список создаётся так:

Первая позиция в списке — это позиция 0. К конкретному элементу списка обращаются так:

Для работы со списками доступно много операций. Самые важные из них:

Перебор списка циклом for of

Перебрать все значения списка можно обычным циклом for, вот так:

Но есть вариант цикла for, с которым перебирать значения списка проще: цикл for of. Следующий код делает то же самое, что и предыдущий, но короче:

Оценка урона оружия и условие «добивания»

У нашего текущего ИИ есть проблема: когда враг почти мёртв, лук-порей сначала тратит ход на усиления, лечение и щиты и только потом стреляет, хотя мог бы сразу добить врага!

Чтобы лучше справляться с такой ситуацией в конце боя, оценим урон, который мы можем нанести врагу, и узнаем, получится ли его добить.

Сначала получим список характеристик нашего оружия через me.weapon.features:

У каждой характеристики есть свойства: .type (тип эффекта), .minValue (минимальное значение), .maxValue (максимальное значение)... Если характеристика — это урон, вычисляем итоговый урон:

Прибавляем урон к сумме:

В конце — условие: если общий урон больше здоровья врага, мы его убьём, значит, атакуем! Иначе выжидаем и применяем чипы:

> Совет: часть списка можно извлечь с помощью list.slice(2, 8).

> Совет: списки можно вкладывать друг в друга, например список в списке [ [1, 2, 3] ], а к вложенному списку обращаются через list[0][0].

❓ Тест

Для чего можно использовать список?

Чтобы хранить несколько значений Чтобы сортировать значения Чтобы выполнять инструкции параллельно Чтобы выполнять несколько вычислений

Какие фрагменты кода корректны?

let a = [1, 2, 3] a[0] + a[2] let [1, 2, 3] [1, 2, 3].length [ [1, 2], [3, 4], [5, 6] ] list[5][10]

Полный код ИИ