«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Руководство по освоению массивов JavaScript

Руководство по освоению массивов JavaScript

Опубликовано 1 августа 2024 г.
Просматривать:629

A Guide to Master JavaScript Arrays

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

Введение в массивы в JavaScript

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

let fruits = ["Apple", "Banana", "Cherry"];
let numbers = [1, 2, 3, 4, 5];
let mixed = [1, "Apple", true, {name: "John"}, [1, 2, 3]];

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

Массивы можно создавать с помощью литералов массива или конструктора Array.

let arr1 = [1, 2, 3];
let arr2 = new Array(1, 2, 3);
console.log(arr1); // Output: [1, 2, 3]
console.log(arr2); // Output: [1, 2, 3]

Свойства массива

  • длина: возвращает количество элементов в массиве.
let arr = [1, 2, 3, 4, 5];
console.log(arr.length); // Output: 5

Методы массива

1. нажать()

Добавляет один или несколько элементов в конец массива и возвращает новую длину.

let arr = [1, 2, 3];
arr.push(4);
console.log(arr); // Output: [1, 2, 3, 4]

2. поп()

Удаляет последний элемент из массива и возвращает этот элемент.

let arr = [1, 2, 3];
let last = arr.pop();
console.log(arr); // Output: [1, 2, 3]
console.log(last); // Output: 3

3. сдвиг()

Удаляет первый элемент из массива и возвращает этот элемент.

let arr = [1, 2, 3];
let first = arr.shift();
console.log(arr); // Output: [2, 3]
console.log(first); // Output: 1

4. отменить сдвиг()

Добавляет один или несколько элементов в начало массива и возвращает новую длину.

let arr = [2, 3];
arr.unshift(1);
console.log(arr); // Output: [1, 2, 3]

5. конкат()

Объединяет два или более массива и возвращает новый массив.

let arr1 = [1, 2];
let arr2 = [3, 4];
let merged = arr1.concat(arr2);
console.log(merged); // Output: [1, 2, 3, 4]

6. присоединиться()

Объединяет все элементы массива в строку.

let arr = [1, 2, 3];
let str = arr.join("-");
console.log(str); // Output: "1-2-3"

7. обратный()

Изменяет порядок элементов в массиве.

let arr = [1, 2, 3];
arr.reverse();
console.log(arr); // Output: [3, 2, 1]

8. срез()

Возвращает неполную копию части массива в новый объект массива.

let arr = [1, 2, 3, 4, 5];
let sliced = arr.slice(1, 3);
console.log(sliced); // Output: [2, 3]

9. сращивание()

Изменяет содержимое массива, удаляя, заменяя или добавляя элементы.

let arr = [1, 2, 3, 4, 5];
arr.splice(1, 2, "a", "b");
console.log(arr); // Output: [1, "a", "b", 4, 5]

10. сортировка()

Сортирует элементы массива по месту и возвращает отсортированный массив.

let arr = [3, 1, 4, 1, 5, 9];
arr.sort((a, b) => a - b);
console.log(arr); // Output: [1, 1, 3, 4, 5, 9]

11. фильтр()

Создает новый массив со всеми элементами, прошедшими проверку, реализованную предоставленной функцией.

let arr = [1, 2, 3, 4, 5];
let filtered = arr.filter(x => x > 2);
console.log(filtered); // Output: [3, 4, 5]

12. карта()

Создает новый массив с результатами вызова предоставленной функции для каждого элемента вызывающего массива.

let arr = [1, 2, 3];
let mapped = arr.map(x => x * 2);
console.log(mapped); // Output: [2, 4, 6]

13. уменьшить()

Применяет функцию к аккумулятору и каждому элементу массива, чтобы уменьшить его до одного значения.

let arr = [1, 2, 3, 4];
let sum = arr.reduce((acc, curr) => acc   curr, 0);
console.log(sum); // Output: 10

14. найти()

Возвращает значение первого элемента массива, удовлетворяющего предоставленной функции тестирования.

let arr = [1, 2, 3, 4, 5];
let found = arr.find(x => x > 3);
console.log(found); // Output: 4

15. НайтиИндекс()

Возвращает индекс первого элемента массива, который удовлетворяет предоставленной функции тестирования.

let arr = [1, 2, 3, 4, 5];
let index = arr.findIndex(x => x > 3);
console.log(index); // Output: 3

16. каждый()

Проверяет, прошли ли все элементы массива тест, реализованный предоставленной функцией.

let arr = [1, 2, 3, 4, 5];
let allBelowTen = arr.every(x => x 



17. некоторые()

Проверяет, проходит ли хотя бы один элемент массива тест, реализованный предоставленной функцией.

let arr = [1, 2, 3, 4, 5];
let anyAboveThree = arr.some(x => x > 3);
console.log(anyAboveThree); // Output: true

18. включает()

Определяет, содержит ли массив определенное значение среди своих записей.

let arr = [1, 2, 3, 4, 5];
let hasThree = arr.includes(3);
console.log(hasThree); // Output: true

19. индексОф()

Возвращает первый индекс, по которому можно найти данный элемент в массиве, или -1, если он отсутствует.

let arr = [1, 2, 3, 4, 5];
let index = arr.indexOf(3);
console.log(index); // Output: 2

20. ПоследнийИндексOf()

Возвращает последний индекс, по которому можно найти данный элемент в массиве, или -1, если он отсутствует.

let arr = [1, 2, 3, 4, 5, 3];
let index = arr.lastIndexOf(3);
console.log(index); // Output: 5

21. квартира()

Создает новый массив со всеми элементами подмассива, рекурсивно объединенными в него до указанной глубины.

let arr = [1, [2, [3, [4]]]];
let flattened = arr.flat(2);
console.log(flattened); // Output: [1, 2, 3, [4]]

22. плоскаяКарта()

Сначала сопоставляет каждый элемент с помощью функции сопоставления, затем сводит результат в новый массив.

let arr = [1, 2, 3];
let flatMapped = arr.flatMap(x => [x, x * 2]);
console.log(flatMapped); // Output: [1, 2, 2, 4, 3, 6]

23. из()

Создает новый экземпляр массива с неполным копированием из массивоподобного или итерируемого объекта.

let str = "Hello";
let arr = Array.from(str);
console.log(arr); // Output: ["H", "e", "l", "l", "o"]

24. isArray()

Определяет, является ли переданное значение массивом.

console.log(Array.isArray([1, 2, 3])); // Output: true
console.log(Array.isArray("Hello")); // Output: false

25. из()

Создает

новый экземпляр массива с переменным количеством аргументов, независимо от количества или типа аргументов.

let arr = Array.of(1, 2, 3);
console.log(arr); // Output: [1, 2, 3]

Практические примеры

Пример 1. Удаление дубликатов из массива

let arr = [1, 2, 3, 3, 4, 4, 5];
let unique = [...new Set(arr)];
console.log(unique); // Output: [1, 2, 3, 4, 5]

Пример 2. Суммирование всех значений в массиве

let arr = [1, 2, 3, 4, 5];
let sum = arr.reduce((acc, curr) => acc   curr, 0);
console.log(sum); // Output: 15

Пример 3. Сглаживание глубоко вложенного массива

let arr = [1, [2, [3, [4, [5]]]]];
let flattened = arr.flat(Infinity);
console.log(flattened); // Output: [1, 2, 3, 4, 5]

Пример 4. Поиск максимального значения в массиве

let arr = [1, 2, 3, 4, 5];
let max = Math.max(...arr);
console.log(max); // Output: 5

Пример 5. Создание массива пар ключ-значение

let obj = { a: 1, b: 2, c: 3 };
let entries = Object.entries(obj);
console.log(entries); // Output: [["a", 1], ["b", 2], ["c", 3]]

Заключение

Массивы — это важная часть JavaScript, предоставляющая мощный способ управления наборами данных. Овладев функциями массивов, вы сможете с легкостью выполнять сложные манипуляции с данными и писать более эффективный и читаемый код. В этом подробном руководстве рассмотрены наиболее важные функции массивов в JavaScript, а также приведены подробные примеры и пояснения. Практикуйтесь в использовании этих функций и экспериментируйте с различными вариантами использования, чтобы углубить понимание и улучшить свои навыки программирования.

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/imsushant12/a-guide-to-master-javascript-arrays-38bj?1. Если есть какие-либо нарушения, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3