Три полезных трюка с массивами в JavaScript
JavaScript

Три полезных трюка с массивами в JavaScript

Razilator

В этой статье мы рассмотрим три полезных трюка для работы с массивами, такие как удаление дубликатов, заполнение массива определенным значением и быстрое преобразование массива в объект.

Удаление дубликатов массива

Ниже приведен способ удаления дубликатов из массива:

index.js
const users = ['Владислав', 'Александр', 'Никита', 'Владислав', 'Александр', 'Дмитрий'];

const unique_users = [...new Set(users)]

console.log(unique_users) // ["Владислав", "Александр", "Никита", "Дмитрий"]

Данный код использует механизм Set для удаления дубликатов из массива users.

  1. Создается массив users, содержащий имена пользователей.
  2. Затем, с помощью оператора расширения (...), создается новый массив unique_users, в котором каждый элемент массива users помещается в конструктор Set. Конструктор Set создает новый объект, который содержит только уникальные значения.
  3. Из объекта Set создается массив unique_users, который содержит только уникальные имена пользователей.
  4. Наконец, результат выводится в консоль с помощью console.log().

Результат выполнения кода будет массив unique_users, в котором все повторяющиеся имена пользователей удалены, оставляя только уникальные имена.

Примечание: не будет работать, если в массиве содержится объект.

Быстрое преобразование массива в объект

Ниже приведен способ быстрого преобразования массива в объект:

index.js
const users = ['Владислав', 'Александр', 'Никита', 'Владислав', 'Александр', 'Дмитрий'];

const res = {...users};

console.log(res); // {0: "Владислав", 1: "Александр", 2: "Никита", ...}

Данный код создает новый объект res, используя оператор расширения ({...}), на основе массива users.

  1. Исходный массив users содержит имена пользователей.
  2. С помощью оператора расширения {...}, элементы массива users копируются в новый объект res.
  3. Ключи объекта res автоматически генерируются в виде числовых индексов, начиная с 0 и увеличиваясь на единицу для каждого элемента массива. Значениями ключей становятся соответствующие элементы массива users.
  4. Результат выводится в консоль с помощью console.log().

Результат выполнения кода будет объект res, где каждый элемент массива users становится свойством объекта с числовым ключом. Таким образом, объект res имеет структуру, подобную массиву, но с числовыми ключами вместо индексов массива.

Быстрое заполнение массива определеннными данными

В примере ниже мы рассмотрим быстрое заполнение массива данными:

index.js
const user = new Array(5).fill('Юлия')

console.log(user) // ["Юлия", "Юлия", "Юлия", "Юлия", "Юлия"]

Данный код создает новый массив user, используя конструктор Array и метод fill().

  1. Конструктор Array(5) создает новый массив длиной 5 элементов, заполненный значениями по умолчанию (undefined).
  2. Метод fill('Юлия') применяется к созданному массиву user и заполняет каждый элемент массива значением 'Юлия'.
  3. Результат выводится в консоль с помощью console.log().

Результат выполнения кода будет массив user, содержащий 5 элементов со значением 'Юлия'. Таким образом, метод fill() позволяет заполнить все элементы массива определенным значением.

;