Операции с массивами в JavaScript

Материал из Викижурнал
Операции с массивами в JavaScript
Операции с массивами в JavaScript
Операции с массивами в JavaScript
Тематические порталы

Массивы в JavaScript являются мощным и универсальным инструментом для хранения и обработки коллекций данных. Существует множество встроенных методов для эффективной работы с массивами.

Основные операции

Создание массивов

// Литеральная нотация
let fruits = ['яблоко', 'банан', 'апельсин'];

// Конструктор Array()
let numbers = new Array(1, 2, 3, 4, 5);

// Создание массива с определенной длиной
let emptyArray = new Array(5); // [<5 empty items>]

Базовые методы манипуляции

Добавление и удаление элементов

// Добавление элемента в конец
fruits.push('груша');

// Удаление последнего элемента
let lastFruit = fruits.pop();

// Добавление элемента в начало
fruits.unshift('виноград');

// Удаление первого элемента
let firstFruit = fruits.shift();

Преобразование и трансформация

// Создание нового массива с помощью map()
let lengths = fruits.map(fruit => fruit.length);

// Фильтрация элементов
let longFruits = fruits.filter(fruit => fruit.length > 5);

// Редукция массива
let totalLength = fruits.reduce((acc, fruit) => acc + fruit.length, 0);

Расширенные операции

Поиск элементов

// Проверка наличия элемента
let hasApple = fruits.includes('яблоко');

// Поиск индекса элемента
let bananaIndex = fruits.indexOf('банан');

// Поиск с условием
let foundFruit = fruits.find(fruit => fruit.startsWith('а'));

Сортировка и разворот

// Сортировка по умолчанию
fruits.sort();

// Сортировка с custom-функцией
numbers.sort((a, b) => a - b);

// Разворот массива
fruits.reverse();

Деструктуризация

// Извлечение элементов
let [first, second, ...rest] = fruits;

// Обмен значениями
[a, b] = [b, a];

Продвинутые методы

Spread-оператор

// Копирование массива
let fruitsCopy = [...fruits];

// Объединение массивов
let allFruits = [...fruits, ...vegetables];

Плоскостность массивов

// Превращение вложенных массивов в плоскую структуру
let nestedArray = [1, [2, 3], [4, [5, 6]]];
let flatArray = nestedArray.flat(2);

Создание иммутабельных операций

Работа без изменения оригинала

// Создание нового массива без изменения оригинала
let newFruits = fruits.slice();
let filteredFruits = fruits.filter(fruit => fruit.length > 4);

Практические советы

  • Используйте const для создания массивов, которые не будут переназначаться
  • Предпочтительны иммутабельные методы
  • Избегайте прямых мутаций состояния

Заключение

Массивы в JavaScript предоставляют богатый набор методов для эффективной работы с коллекциями данных, позволяя писать лаконичный и выразительный код.

Другие статьи о Javascript