Методи для роботи з масивами в JavaScript. Частина 2

32

Від автора: вітаю вас, друзі. Продовжуємо працювати з масивами в JavaScript. У цій статті ми познайомимося з деякими корисними методами для роботи з масивами в JavaScript.

В одній з попередніх статей ми з вами вже познайомилися з деякими корисними методами для роботи з масивами, це методи pop(), push(), shift() і unshift(). У цій статті ми додамо в свою колекцію ще кілька потрібних методів.

Перша функція, яка однозначно стане в нагоді вам в роботі — метод split(). Цей метод дозволяє з рядка отримати масив. Складові частини рядка, розділені певним роздільником, стануть елементами масиву. Найпростіший приклад. У нас є рядок з набором імен, відділених один від одного комами. З рядка ми хочемо отримати масив. Нам допоможе саме метод split():

var namesStr = ‘John, James, Jane, Jake’;
var namesArr = namesStr.split(‘, ‘);
console.log(namesArr);

Методы для работы с массивами в JavaScript

В якості роздільника ми вказали комою з пробілом, оскільки саме ця комбінація символів використана в рядку. Однак роздільником може бути і будь-який інший символ або група символів. Наприклад, у нас є рядок, слова до якої відокремлені один від одного вертикальною рискою:

var namesStr = ‘John|James|Jane|Jake’;
var namesArr = namesStr.split(‘|’);
console.log(namesArr); // [«John», «James», «Jane», «Jake»]

Як бачимо, ми отримали все той же масив. Метод split() має також другий необов’язковий параметр, яким при необхідності можна обмежити довжину масиву:

var namesStr = ‘John|James|Jane|Jake’;
var namesArr = namesStr.split(‘|’, 2);
console.log(namesArr); // [«John», «James»]

Наступний метод, з яким ми познайомимося — метод join(). Функція join() є антонімом функції split(). join() з масиву дозволяє отримати рядок, де колишні елементи масиву будуть відокремлені одне від одного зазначеним роздільником:

var namesArr = [«John», «James», «Jane», «Jake»];
var namesStr = namesArr.join(‘, ‘);
console.log(namesStr); // John, James, Jane, Jake

Якщо ви знайомі з PHP, тоді помітили, що ці методи є аналогами функції explode() і implode() в PHP.

Ще один метод, з яким ми попрацюємо в цій статті, — метод splice(). Цей метод складніший всіх попередніх, але він і вміє побільше. Давайте розглянемо на кількох прикладах можливості методу splice(). Насамперед, цей метод використовується для видалення елементів масиву. Для цього ми можемо передати два параметри: перший параметр вкаже ключ елемента, з якого потрібно почати операція, другий параметр — кількість елементів, які потрібно видалити:

var names = [«John», «James», «Jane», «Jake»];
names.splice(1, 2);
console.log(names);

Методы для работы с массивами в JavaScript

Ми почали з другого елемента (ключ 1) і видалили з масиву 2 елемента, тобто другий і третій. Дуже зручно. Якщо не вказувати другий параметр, тоді будуть видалені всі елементи масиву, починаючи з ключа, переданого першим параметром:

var names = [«John», «James», «Jane», «Jake»];
names.splice(1);
console.log(names); // [«John»]

Крім простого видалення метод splice() вміє замінювати елементи, для цього досить перерахувати вставлені елементи третім і наступними параметрами. Приклад:

var names = [«John», «James», «Jane», «Jake»];
names.splice(1, 2, ‘Іванов’, ‘Петров’);
console.log(names);

Методы для работы с массивами в JavaScript

Замість видалених імен James та Jane ми вставили прізвища Іванов і Петров. При цьому ми можемо додати більше елементів, ніж видалили, інтерпретатор JavaScript просто зрушить залишилися елементи вправо. Спробуйте самостійно.

Також у нас є можливість вставити в середину елементи масиву, нічого при цьому не видаляють. Для цього необхідно в якості другого параметра передати методу splice() число 0:

var names = [«John», «James», «Jane», «Jake»];
names.splice(1, 0, ‘Іванов’, ‘Петров’);
console.log(names);

Методы для работы с массивами в JavaScript

Дуже зручний метод, чи не правда? У наступних статтях ми розглянемо інші методи для роботи з масивами. Якщо ви хочете більше дізнатися про JavaScript, тоді рекомендую звернути свою увагу на уроки по JavaScript і окремий курс по мові JavaScript. Удачі!