Вход/Регистрация
JavaScript. Подробное руководство, 6-е издание
вернуться

Флэнаган Дэвид

Шрифт:

var а = [1,2,3,4,5,6,7,8];

a.splice(4); // Вернет [5,6,7,8]; а = [1,2,3,4]

a.splice(1,2); // Вернет [2,3]; а = [1,4]

a.splice(1,1); // Вернет [4]; а = [1]

Первые два аргумента метода splice определяют элементы массива, подлежащие удалению. За этими аргументами может следовать любое количество дополнительных аргументов, определяющих элементы, которые будут вставлены в массив, начиная с позиции, указанной в первом аргументе. Например:

var а = [1,2,3,4,5];

a.splice(2,0,'а','b'); // Вернет []; а = [1,2,’а','b',3,4,5]

a.splice(2,2, [1,2], 3); // Вернет ['a','b']; а = [1,2, [1,2],3,3,4,5]

Обратите внимание, что, в отличие от

concat
, метод
splice
вставляет массивы целиком, а не их элементы.

7.8.7. Методы push и рор

Методы

push
и
рор
позволяют работать с массивами как со стеками. Метод
push
добавляет один или несколько новых элементов в конец массива и возвращает его новую длину. Метод
pop
выполняет обратную операцию - удаляет последний элемент массива, уменьшает длину массива и возвращает удаленное им значение. Обратите внимание, что оба эти метода изменяют исходный массив, а не создают его модифицированную копию. Комбинация
push
и
рор
позволяет на основе массива реализовать стек с дисциплиной обслуживания «первым вошел - последним вышел». Например:

var stack = []; // стек: []

stack.push(1,2): // стек: [1,2] Вернет 2

stack.pop; // стек: [1] Вернет 2

stack.push(3); // стек: [1,3] Вернет 2

stack.pop; // стек: [1] Вернет 3

stack.push([4,5]); // стек: [1,[4,5]] Вернет 2

stack.рор // стек: [1] Вернет [4,5]

stack.рор; // стек: [] Вернет 1

7.8.8. Методы unshift и shift

Методы

unshift
и
shift
ведут себя почти так же, как
push
и
рор
, за исключением того, что они вставляют и удаляют элементы в начале массива, а не в конце. Метод
unshift
смещает существующие элементы в сторону больших индексов для освобождения места, добавляет элемент или элементы в начало массива и возвращает новую длину массива. Метод
shift
удаляет и возвращает первый элемент массива, смещая все последующие элементы на одну позицию вниз, чтобы занять место, освободившееся в начале массива. Например:

var а = []; // а:[]

a.unshift(1); // а:[1] Вернет: 1

a.unshift(22); // а:[22,1] Вернет: 2

a.shift; // а:[1] Вернет: 22

a.unshift(3,[4,5]); // а:[3,[4,5],1] Вернет: 3

a.shift; // а:[[4,5], 1 ] Вернет: 3

a.shift; // а:[1] Вернет: [4,5]

a.shift; // а:[] Вернет: 1

Обратите внимание на поведение метода

unshift
при вызове с несколькими аргументами. Аргументы вставляются не по одному, а все сразу (как в случае с методом
splice
). Это значит, что в результирующем массиве они будут следовать в том же порядке, в котором были указаны в списке аргументов. Будучи вставленными по одному, они бы расположились в обратном порядке.

7.8.9. Методы toString и toLocaleString

Массивы, как и любые другие объекты в JavaScript, имеют метод

toString
. Для массива этот метод преобразует каждый его элемент в строку (вызывая в случае необходимости методы
toString
элементов массива) и выводит список этих строк через запятую. Примечательно, что результат не включает квадратные скобки или какие-либо другие разделители вокруг значений массива. Например:

  • Читать дальше
  • 1
  • ...
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: