JavaScript | Как изменить длину массива?

JavaScript | Как изменить длину массива?

Иногда в работе с массивами требуется изменять его длину, а именно увеличивать длину массива или уменьшать длину массива.

Изменяемый массив:

var massiv = ["ффф","ыыы","ввв","ааа","ппп","ррр","ооо","ллл"]

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

Длина изменяемого массива 8:

massiv.length

Когда мы говорим об изменении длины массива, мы всегда должны опираться на его текущее значение длины. Если мы будем знать текущее значение, тогда мы будем понимать в какую сторону произойдут изменения — в сторону увеличения длины или в сторону уменьшения длины.

 

Видео инструкция

В этом видео приводится пример изменения длины массива JavaScript в сторону увеличения, а потом в сторону уменьшения. Массив создан при помощи квадратных скобок. Ввод команд осуществляется в консоль браузера Google Chrome. Результат виден сразу.

Чтобы изменить длину массива, нужно присвоить свойству «length» желаемое целочисленное значение новой длины. Воспользуемся оператором присваивания «=» (один знак равенства) и установим свойство «length» экземпляра массива на 4. Так мы уменьшим длину массива. Мы прописываем целое число в качестве новой длины.

massiv.length = 4

Мы уменьшили длину массива и потеряли данные:

Длина массива 4 - JavaScript
Длина массива 4 — JavaScript

Мы добились изменения длины массива в сторону уменьшения и получили нужную нам длину — 4.

 

Теперь изменим длину массива на изначальную длину — 8.

massiv.length = 8

Мы увеличили длину массива, но не получили новых данных и не вернули старые данные:

Длина массива 8 - появились пустые элементы - JavaScript
Длина массива 8 — появились пустые элементы — JavaScript

Мы добились изменения длины массива в сторону увеличения и получили нужную нам длину — 8.

 

Длина массива не изменяется только в том случае, если свойству «length» присваивается значение текущей длины.

 

Ссылки

JavaScript | Массивы (Array)

JavaScript | Как увеличить длину массива?

JavaScript | Как уменьшить длину массива?

ECMAScriptLiving Standardhttps://tc39.es/ecma262/#sec-array-objects