Какие методы массива возвращают новый массив на JavaScript


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

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

В этой статье мы рассмотрим следующие методы массива, возвращающие новый массив:

  • map: создает новый массив на основе результатов вызова указанной функции для каждого элемента исходного массива.
  • filter: создает новый массив, содержащий только те элементы исходного массива, для которых указанная функция возвращает true.
  • reduce: применяет указанную функцию к аккумулятору и каждому элементу исходного массива (слева направо), возвращая одно значение.
  • slice: возвращает новый массив, содержащий копию части исходного массива заданной длины.
  • concat: возвращает новый массив, состоящий из элементов исходного массива, за которыми следуют элементы других массивов или значения.

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

Содержание
  1. Методы массива, возвращающие новый массив:
  2. Методы, создающие новый массив на основе исходного:
  3. Методы, преобразующие массив и возвращающие новый массив:
  4. Методы, работающие с элементами массива и возвращающие новый массив:
  5. Методы, удаляющие и изменяющие элементы массива и возвращающие новый массив:
  6. Методы фильтрации и преобразования:
  7. Методы сортировки и разделения:
  8. Метод sort()
  9. Метод reverse()
  10. Метод concat()
  11. Метод slice()
  12. Метод splice()
  13. Метод split()
  14. Метод join()
  15. Метод toString()
  16. Методы объединения и присоединения:

Методы массива, возвращающие новый массив:

JavaScript предлагает множество методов для работы с массивами. Некоторые из них возвращают новый массив, не изменяя исходный массив. В этом разделе мы рассмотрим такие методы.

Методы, создающие новый массив на основе исходного:

  • map() — создает новый массив, применяя функцию к каждому элементу исходного массива;
  • filter() — создает новый массив, включающий только элементы исходного массива, для которых функция возвращает true;
  • slice() — создает новый массив, содержащий указанный сегмент исходного массива;
  • concat() — создает новый массив, объединяя исходный массив с другими массивами или значениями.

Методы, преобразующие массив и возвращающие новый массив:

  • reverse() — создает новый массив, в котором элементы исходного массива расположены в обратном порядке;
  • sort() — создает новый массив, отсортированный в соответствии с заданным порядком сортировки;

Методы, работающие с элементами массива и возвращающие новый массив:

  • slice() — создает новый массив, содержащий указанный сегмент исходного массива;
  • splice() — создает новый массив, удаляя, заменяя или добавляя элементы в исходном массиве;
  • join() — создает новый массив, объединяя элементы исходного массива в строку с разделителем.

Методы, удаляющие и изменяющие элементы массива и возвращающие новый массив:

  • pop() — создает новый массив, удаляя последний элемент из исходного массива;
  • shift() — создает новый массив, удаляя первый элемент из исходного массива;
  • push() — создает новый массив, добавляя элементы в конец исходного массива;
  • unshift() — создает новый массив, добавляя элементы в начало исходного массива.

Теперь вы знаете, какие методы массива возвращают новый массив. Использование этих методов может значительно облегчить работу с массивами в JavaScript.

Методы фильтрации и преобразования:

Массивы в JavaScript предоставляют нам множество методов для фильтрации и преобразования данных. В этом разделе мы рассмотрим некоторые из этих методов:

  1. filter() — возвращает новый массив, состоящий из элементов исходного массива, которые удовлетворяют заданному условию. Для фильтрации используется callback-функция, которая принимает аргументы элемент, индекс исходного массива и сам исходный массив. Например:
    • const numbers = [1, 2, 3, 4, 5];
    • const evenNumbers = numbers.filter(num => num % 2 === 0);
    • // evenNumbers = [2, 4]
  2. map() — возвращает новый массив, состоящий из результатов вызова указанной функции для каждого элемента исходного массива. Функция принимает аргументы элемент, индекс исходного массива и сам исходный массив. Например:
    • const numbers = [1, 2, 3, 4, 5];
    • const doubledNumbers = numbers.map(num => num * 2);
    • // doubledNumbers = [2, 4, 6, 8, 10]
  3. reduce() — применяет функцию-аккумулятор к каждому элементу исходного массива, возвращая одно результирующее значение. Функция принимает четыре аргумента: аккумулятор, текущий элемент, индекс текущего элемента и исходный массив. Например:
    • const numbers = [1, 2, 3, 4, 5];
    • const sum = numbers.reduce((acc, num) => acc + num, 0);
    • // sum = 15
  4. slice() — возвращает копию части исходного массива. Принимает два аргумента: индекс начала и индекс конца (не включительно). Если аргументы не указаны, возвращается копия всего массива. Например:
    • const numbers = [1, 2, 3, 4, 5];
    • const slicedNumbers = numbers.slice(1, 4);
    • // slicedNumbers = [2, 3, 4]

Это только некоторые из методов фильтрации и преобразования массивов в JavaScript. Вы можете изучить полный список доступных методов в официальной документации JavaScript.

Методы сортировки и разделения:

Массивы в JavaScript имеют набор встроенных методов, которые позволяют сортировать и разделять элементы массива. Ниже приведены некоторые из наиболее популярных методов:

Метод sort()

sort() сортирует элементы массива по алфавиту или числовому значению. Этот метод изменяет исходный массив и возвращает отсортированный массив. Сортировка выполняется путем сравнения пар элементов массива и их последующей перестановки, если это необходимо.

Метод reverse()

reverse() меняет порядок элементов массива на обратный. Этот метод также изменяет исходный массив и возвращает измененный массив.

Метод concat()

concat() объединяет два или более массивов и возвращает новый массив, содержащий все элементы исходных массивов. Исходные массивы не изменяются.

Метод slice()

slice() возвращает новый массив, содержащий выбранные элементы исходного массива. Выбор элементов происходит с помощью указания начального индекса и конечного индекса (не включительно) в качестве аргументов. Исходный массив не изменяется.

Метод splice()

splice() изменяет содержимое массива путем удаления, замены или добавления новых элементов. Этот метод изменяет исходный массив и возвращает массив удаленных элементов. Аргументы метода включают начальный индекс, количество удаляемых элементов и, при необходимости, новые элементы для добавления.

Метод split()

split() разделяет строку на подстроки и возвращает массив этих подстрок. Разделитель указывается в качестве аргумента метода. Например, split(",") разделит строку на подстроки на основе запятых.

Метод join()

join() объединяет все элементы массива в строку и возвращает эту строку. Разделитель для элементов массива может быть указан в качестве аргумента метода. Например, join(",") объединит элементы массива с использованием запятых.

Метод toString()

toString() преобразует массив в строку, представляющую собой список элементов, разделенных запятыми. Этот метод возвращает строку и не изменяет исходный массив.

Методы объединения и присоединения:

Массивы в JavaScript предоставляют несколько методов для объединения и присоединения других массивов или элементов к существующему массиву. Эти методы позволяют комбинировать или расширять массивы с помощью определенных правил.

concat(): Этот метод создает новый массив, объединяя два или более массива в один. Он не изменяет исходные массивы, а возвращает новый массив, содержащий элементы всех объединенных массивов. Пример использования:


let fruits = ['яблоко', 'банан'];
let vegetables = ['морковь', 'лук'];
let combinedArray = fruits.concat(vegetables);
console.log(combinedArray);
// Output: ['яблоко', 'банан', 'морковь', 'лук']

join(): Этот метод объединяет все элементы массива в одну строку, используя определенный разделитель. Он возвращает новую строку. Если метод вызывается без аргумента, элементы просто объединяются без разделителя. Пример использования:


let fruits = ['яблоко', 'банан', 'морковь'];
let combinedString = fruits.join(', ');
console.log(combinedString);
// Output: 'яблоко, банан, морковь'

push(): Этот метод добавляет один или несколько элементов в конец массива и возвращает новую длину массива. Пример использования:


let fruits = ['яблоко', 'банан'];
let newLength = fruits.push('морковь', 'лук');
console.log(fruits);
// Output: ['яблоко', 'банан', 'морковь', 'лук']
console.log(newLength);
// Output: 4

unshift(): Этот метод добавляет один или несколько элементов в начало массива и возвращает новую длину массива. Пример использования:


let fruits = ['яблоко', 'банан'];
let newLength = fruits.unshift('морковь', 'лук');
console.log(fruits);
// Output: ['морковь', 'лук', 'яблоко', 'банан']
console.log(newLength);
// Output: 4

spread оператор (…): Это не метод массива, но это популярный способ объединить два или более массивов в новый массив с использованием оператора spread. Этот оператор разворачивает элементы массива и вставляет их в новый массив. Пример использования:


let fruits = ['яблоко', 'банан'];
let vegetables = ['морковь', 'лук'];
let combinedArray = [...fruits, ...vegetables];
console.log(combinedArray);
// Output: ['яблоко', 'банан', 'морковь', 'лук']

Это лишь некоторые из методов, которые позволяют объединять и присоединять массивы в JavaScript. Используйте их в сочетании с другими методами массивов, чтобы выполнять разнообразные операции с массивами в вашем коде.

Добавить комментарий

Вам также может понравиться