JS метод Array.shift()


Опис

Метод shift() видаляє перший елемент масиву. Після виклику цього методу, всі інші елементи "зсуваються" на одну позицію вгору, і метод повертає цей вилучений елемент. Якщо масив не містить елементів (властивість length дорівнює 0), метод поверне undefined.

pop() виконує функцію аналогічно до shift(), але впливає на останній елемент масиву.

Приклад використання методу shift():

let animals = ["cat", "dog", "elephant", "tiger"];
let removedAnimal = animals.shift();
console.log(removedAnimal); // Output: "cat"
console.log(animals); // Output: ["dog", "elephant", "tiger"]

У цьому прикладі, ми використовуємо метод shift() для вилучення першого елементу cat з масиву. Результатом виконання коду буде масив ["dog", "elephant", "tiger"].

автор: Bond

Порада

Істотним аспектом методу shift() є його ефективність при роботі з великими масивами, оскільки він здатен швидко видаляти перший елемент. Це може бути корисно, коли вам потрібно обробляти дані в реальному часі або здійснювати інші операції, де швидкість виконання має важливе значення.

автор: Bond
Порада

shift() - це "мутуючий" метод, який змінює як довжину, так і вміст масиву. Якщо вам потрібно вилучити перший елемент, але зберегти початковий масив, рекомендується використовувати: arr.slice(1).

автор: Bond
Порада

Метод shift() вимагає, щоб об'єкт this мав властивість length і інші властивості з цілочисельними ключами.

автор: Bond
Порада

Метод shift() не підходить для рядків, адже в JavaScript рядки є незмінними.

автор: Bond
Порада

Якщо ви хочете видалити перший елемент масиву, але також зберегти його значення, ви можете використовувати поєднання методів shift() і push(). Перший елемент можна видалити за допомогою shift(), а потім додати його знову до масиву за допомогою push(). Наприклад:

let array = [1, 2, 3, 4, 5];
let firstElement = array.shift();
console.log(firstElement); // Виведе: 1
array.push(firstElement);
console.log(array); // Виведе: [2, 3, 4, 5, 1]

Цей підхід може бути використаний, якщо ви хочете тимчасово видалити перший елемент для деяких обчислень або перетворень і потім повернути його у масив.

автор: Bond

Синтаксис

shift()

Повернення

value

Видалений елемент з масиву.

автор: Bond

undefined

Якщо масив порожній.

автор: Bond

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE
1 1 1 4 12
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 4 1
Підтримка: серверні переглядачі
Переглядач Node.js Deno
0.10.0 1.0

Приклади

+ запропонувати свій приклад у пісочниці

Цей приклад демонструє, як метод shift() може бути використаний для видалення заявок з черги в сервісному центрі після їх обробки.

автор: Bond

Виклик shift() для не-масивних об'єктів.

const arrayLike = {
  length: 4,
  unrelated: "foo",
  2: 4,
  3: "bar",
};
console.log(Array.prototype.shift.call(arrayLike));
// undefined, оскільки це пуста клітина
console.log(arrayLike);
// { '1': 4, '2': 'bar', length: 3, unrelated: 'foo' }

const plainObj = {};
// Немає властивості length, тому довжина є 0
Array.prototype.shift.call(plainObj);
console.log(plainObj);
// { length: 0 }
автор: Bond

Використання методу shift() у циклі while.

const names = ["Андрій", "Тарас", "Павло", "Марія", "Оксана", "Олег"];

while (typeof (i = names.shift()) !== "undefined") {
  console.log(i);
}
// Андрій, Тарас, Павло, Марія, Оксана, Олег
автор: Bond

Видалення елемента з масиву.

const myFish = ["ангел", "клоун", "мандарин", "хірург", "дельфін"];

console.log("myFish до видалення:", myFish);
// myFish до видалення: ['ангел', 'клоун', 'мандарин', 'хірург', 'дельфін']

const shifted = myFish.shift();

console.log("myFish після видалення:", myFish);
// myFish після видалення: ['клоун', 'мандарин', 'хірург', 'дельфін']

console.log("Видалений елемент:", shifted);
// Видалений елемент: ангел
автор: Bond

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід