Наповнення JS розділу

Добридень, Пані та Панове, завдяки вам вдалося зібрати більше 19тис грн з необхідних 15тис на впровадження JS розділу.

JS розділ вже впроваджено - переходимо до його наповнення і почнемо бігти довгий марафон, адже JS має більше 1100 різноманітних методів, властивостей, подій і т.д., які необхідно описати.

Будемо працювати, і вдень, і вночі, щоб орієнтовно взимку закінчити наповнювати JS розділ!

Ви також можете допомогти нам в цьому. Долучайтеся до нашої спільноти в дискорді - ставайте її частиною і допомагайте нашому розвитку.

Також, підтримуйте нас матеріально.

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"].

Порада:

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

Порада:

Якщо ви хочете видалити перший елемент масиву, але також зберегти його значення, ви можете використовувати поєднання методів 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]

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

Порада:

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

Порада:

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

Порада:

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

Синтаксис

shift()

Параметри

Return

value

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

undefined

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

Переглядачі

Переглядач

1

1

1

4

12

Переглядач

4.4

18

4

1

Переглядач

0.10.0

1.0

Приклади


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

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

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

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

const shifted = myFish.shift();

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

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

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

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

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

Виклик 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 }