1. Добавление/удаление элементов
push() - добавляет элемент в конец массива
let fruits = ["яблоко", "банан"];
fruits.push("апельсин");
console.log(fruits); // ["яблоко", "банан", "апельсин"]pop() - удаляет последний элемент и возвращает его
let fruits = ["яблоко", "банан", "апельсин"];
let lastFruit = fruits.pop();
console.log(lastFruit); // "апельсин"
console.log(fruits); // ["яблоко", "банан"]
unshift() - добавляет элемент в начало массива
let fruits = ["банан", "апельсин"];
fruits.unshift("яблоко");
console.log(fruits); // ["яблоко", "банан", "апельсин"]shift() - удаляет первый элемент и возвращает его
let fruits = ["яблоко", "банан", "апельсин"];
let firstFruit = fruits.shift();
console.log(firstFruit); // "яблоко"
console.log(fruits); // ["банан", "апельсин"]
2. Преобразование массива
join() - объединяет все элементы в строку
let fruits = ["яблоко", "банан", "апельсин"];
let str = fruits.join(", ");
console.log(str); // "яблоко, банан, апельсин"
console.log(fruits.join("-")); // "яблоко-банан-апельсин"toString() - преобразует массив в строку
let fruits = ["яблоко", "банан", "апельсин"];
console.log(fruits.toString()); // "яблоко,банан,апельсин"
concat() - объединяет массивы
let fruits = ["яблоко", "банан"];
let vegetables = ["морковь", "картофель"];
let food = fruits.concat(vegetables);
console.log(food); // ["яблоко", "банан", "морковь", "картофель"]
// Можно объединять несколько массивов
let moreFood = fruits.concat(vegetables, ["лук", "чеснок"]);
3. Извлечение части массива
slice() - возвращает новый массив с частью элементов
let fruits = ["яблоко", "банан", "апельсин", "виноград", "груша"];
console.log(fruits.slice(1, 3)); // ["банан", "апельсин"] (с 1 по 3, не включая 3)
console.log(fruits.slice(2)); // ["апельсин", "виноград", "груша"] (со 2 до конца)
console.log(fruits.slice(-2)); // ["виноград", "груша"] (последние 2 элемента)
console.log(fruits.slice()); // копия всего массива
splice() - изменяет массив, удаляя или добавляя элементы
let fruits = ["яблоко", "банан", "апельсин", "виноград"];
// Удаление элементов
let removed = fruits.splice(1, 2); // удалить 2 элемента начиная с индекса 1
console.log(removed); // ["банан", "апельсин"]
console.log(fruits); // ["яблоко", "виноград"]
// Добавление элементов
fruits.splice(1, 0, "груша", "киви"); // добавить элементы начиная с индекса 1
console.log(fruits); // ["яблоко", "груша", "киви", "виноград"]
// Замена элементов
fruits.splice(2, 1, "банан"); // заменить 1 элемент начиная с индекса 2
console.log(fruits); // ["яблоко", "груша", "банан", "виноград"]
4. Поиск в массиве
indexOf() - ищет элемент и возвращает его индекс
let fruits = ["яблоко", "банан", "апельсин", "банан"];
console.log(fruits.indexOf("банан")); // 1 (первое вхождение)
console.log(fruits.indexOf("виноград")); // -1 (не найден)
console.log(fruits.indexOf("банан", 2)); // 3 (поиск начиная с индекса 2)lastIndexOf() - ищет элемент с конца
let fruits = ["яблоко", "банан", "апельсин", "банан"];
console.log(fruits.lastIndexOf("банан")); // 3includes() - проверяет, есть ли элемент в массиве
let fruits = ["яблоко", "банан", "апельсин"];
console.log(fruits.includes("банан")); // true
console.log(fruits.includes("виноград")); // false5. Сортировка
sort() - сортирует массив (по умолчанию как строки)
let fruits = ["банан", "апельсин", "яблоко", "виноград"];
fruits.sort();
console.log(fruits); // ["апельсин", "банан", "виноград", "яблоко"]
// Для чисел нужна функция сравнения
let numbers = [40, 1, 5, 200];
numbers.sort(); // неправильно: [1, 200, 40, 5]
numbers.sort((a, b) => a - b); // правильно: [1, 5, 40, 200]
reverse() - переворачивает массив
let fruits = ["яблоко", "банан", "апельсин"];
fruits.reverse();
console.log(fruits); // ["апельсин", "банан", "яблоко"]
6. Проверка типа
Array.isArray() - проверяет, является ли значение массивом
console.log(Array.isArray([1, 2, 3])); // true
console.log(Array.isArray("текст")); // false
console.log(Array.isArray({})); // false