Метод reverse
Метод reverse изменяет порядок элементов в массиве на обратный. Метод изменяет исходный массив (он станет перевернутым) и возвращает также перевернутый массив (можно пользоваться и так, и так).
Синтаксис
массив.reverse();
Пример
Давайте перевернем массив:
let arr = [‘a’, ‘b’, ‘c’]; arr.reverse(); console.log(arr);
Результат выполнения кода:
Пример
А теперь давайте запишем перевернутый массив в новую переменную:
let arr = [‘a’, ‘b’, ‘c’]; let res = arr.reverse(); console.log(res);
Результат выполнения кода:
Пример . Применение
Давайте перевернем символы строки в обратном порядке. Для этого разобьем строку в массив с помощью split по разделителю » (этот разделитель положит каждый символ строки в отдельный элемент массива), перевернем этот массив с помощью reverse и затем сольем перевернутый массив обратно с помощью join :
let str = ‘123456789’; let arr1 = str.split(»); let arr2 = arr1.reverse(); let res = arr2.join(»); console.log(res);
Результат выполнения кода:
Пример . Применение
Упростим решение предыдущей задачи — сольем все команды в цепочку:
let str = ‘123456789’; let res = str.split(»).reverse().join(»); console.log(res);
Результат выполнения кода:
Смотрите также
- метод split ,
который разбивает строку в массив по указанному разделителю - метод join ,
который объединяет элементы массива в строку с указанным разделителем
Array.prototype.reverse()
Метод reverse() на месте обращает порядок следования элементов массива. Первый элемент массива становится последним, а последний — первым.
Интерактивный пример
Синтаксис
array.reverse()
Параметры
Возвращаемое значение
Описание
Метод reverse() на месте переставляет элементы массива, на котором он был вызван, изменяет массив и возвращает ссылку на него.
Примеры
Пример: обращение порядка элементов в массиве
В следующем примере создаётся массив myArray , содержащий три элемента, а затем массив переворачивается.
var myArray = ["один", "два", "три"]; myArray.reverse(); console.log(myArray); // ['три', 'два', 'один']
Спецификации
| Specification |
|---|
| ECMAScript Language Specification # sec-array.prototype.reverse |
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
- Array.prototype.join()
- Array.prototype.sort()
- TypedArray.prototype.reverse() (en-US)
Found a content problem with this page?
- Edit the page on GitHub.
- Report the content issue.
- View the source on GitHub.
This page was last modified on 4 авг. 2023 г. by MDN contributors.
Your blueprint for a better internet.
MDN
Support
- Product help
- Report an issue
Our communities
Developers
- Web Technologies
- Learn Web Development
- MDN Plus
- Hacks Blog
- Website Privacy Notice
- Cookies
- Legal
- Community Participation Guidelines
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2024 by individual mozilla.org contributors. Content available under a Creative Commons license.
Как развернуть массив js
Напишем собственную функцию, которая разворачивает массив с любым уровнем вложенности:
const flatten = (array) => let flatNums = []; const map = array .map((item) => // перебираем массив Array.isArray(item) ? flatNums = [. flatNums, . flatten(item)] : flatNums = [. flatNums, item]); // => ловкость spread-оператора и никакого мошенничества // если элемент массива не является массивом, отдаём его в массив flatNums в первозданном виде // иначе передаём его повторно в нашу функцию, используя spread return flatNums; > const numbers = [1, [1], [[1, 2, [7], 8], 90], 6]; console.log(flatten(numbers)); // => [1, 1, 1, 2, 7, 8, 90, 6]
Массив распакован на все уровни вложенности.
01 декабря 2021
Чтобы развернуть массив с вложенными массивами в плоский массив, можно воспользоваться методом flat() :
const numbers1 = [1, 2, [3, 4]]; numbers1.flat(); // [1, 2, 3, 4] // Метод принимает число указывающее глубину, на которую нужно обработать вложенные массивы const numbers2 = [1, 2, [3, 4, [5, 6]]]; numbers2.flat(2); // [1, 2, 3, 4, 5, 6] // Можно передать Infinity, чтобы на полную глубину обработать массивы const numbers3 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]]; numbers3.flat(Infinity); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
.reverse ( )
Метод reverse ( ) обращает порядок элементов в массиве в обратном направлении, то есть делает первый элемент последним, а последний — первым.
Метод изменяет массив, по отношению к которому вызван, и возвращает ссылку на изменённый массив.
Пример
Скопировать ссылку «Пример» Скопировано
При вызове reverse ( ) для массива [1 , 2 , 3 ] он превратится в [3 , 2 , 1 ] .
const array = [1, 2, 3]array.reverse()console.log(array)// [3, 2, 1]const array = [1, 2, 3] array.reverse() console.log(array) // [3, 2, 1]
Как пишется
Скопировать ссылку «Как пишется» Скопировано
Метод reverse ( ) не принимает аргументов.
Как понять
Скопировать ссылку «Как понять» Скопировано
Метод reverse ( ) не создаёт новый массив, а изменяет текущий.
Так как метод не создаёт новый массив, а изменяет существующий, то возвращаемое значение — это только ссылка на исходный массив.
Сохраним возвращённое значение в переменную и убедимся, что это ссылка на тот же массив:
const arr = [1, 2, 3]const result = arr.reverse() console.log(result)// [3, 2, 1]console.log(arr)// [3, 2, 1] console.log(result === arr)// trueconst arr = [1, 2, 3] const result = arr.reverse() console.log(result) // [3, 2, 1] console.log(arr) // [3, 2, 1] console.log(result === arr) // true
Если у массива есть «дырки» между элементами, то метод развернёт массив с учётом этих «дырок». Создадим массив с «дыркой»:
const array = [1, 2, 3]array[5] = 6 console.log(array)// [ 1, 2, 3, 2 × empty, 6 ] array.reverse()console.log(array)// [6, 2 × empty, 3, 2, 1]const array = [1, 2, 3] array[5] = 6 console.log(array) // [ 1, 2, 3, 2 × empty, 6 ] array.reverse() console.log(array) // [6, 2 × empty, 3, 2, 1]