Reverse: примеры (JAVASCRIPT)

Использование функции reverse в JavaScript с примерами
Раздел: Массивы, Трансформация
reverse: array

Описание функции reverse в JavaScript

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

Аргументы: метод не принимает никаких аргументов.

Возвращаемое значение: метод возвращает ссылку на изменённый исходный массив с обратным порядком элементов.

Простые примеры использования

Обращение числового массива

const numbers = [1, 2, 3, 4];
numbers.reverse();
console.log(numbers);
[4, 3, 2, 1]

Обращение массива строк

const words = ['яблоко', 'банан', 'апельсин'];
console.log(words.reverse());
['апельсин', 'банан', 'яблоко']

Обращение массива с разными типами данных

const mixed = [true, 42, 'текст', null];
console.log(mixed.reverse());
[null, 'текст', 42, true]

Альтернативные методы в JavaScript

Spread оператор с reverse: создание нового массива без изменения исходного. Пример:

const original = [1, 2, 3];
const reversed = [...original].reverse();

Метод reduceRight: позволяет обработать элементы справа налево с аккумулятором. Полезен для сложных преобразований.

Цикл for в обратном порядке: обеспечивает полный контроль над процессом обращения, но требует больше кода.

Аналоги в других языках программирования

Python

items = [1, 2, 3]
items.reverse()  # Изменяет исходный список
# Или
reversed_items = list(reversed(items))  # Создаёт новый
[3, 2, 1]

PHP

$array = [1, 2, 3];
$reversed = array_reverse($array); // Новый массив
Array ( [0] => 3 [1] => 2 [2] => 1 )

C#

int[] array = { 1, 2, 3 };
Array.Reverse(array); // Изменяет исходный

MySQL

SELECT REVERSE('abc'); // Для строк
cba

Типичные ошибки при использовании

Применение к строке без преобразования

let str = 'привет';
str.reverse();
TypeError: str.reverse is not a function

Ожидание нового массива без копирования

const arr = [1, 2, 3];
const newArr = arr.reverse();
console.log(arr); // Исходный изменён
[3, 2, 1]

Обращение разреженного массива

const sparse = [1, , 3];
sparse.reverse(); // Пустые элементы могут вести себя неочевидно

Изменения в последних версиях

Метод reverse() остаётся стабильным и не претерпел значимых изменений в последних версиях ECMAScript. Однако, в современных стандартах усилилась семантика обработки массивов с «дырами» и типизированных массивов.

Расширенные примеры применения

Обращение строки через массив

Пример javascript
function reverseString(str) {
  return str.split('').reverse().join('');
}
console.log(reverseString('JavaScript'));
tpircSavaJ

Обращение части массива

Пример javascript
const arr = [1, 2, 3, 4, 5];
const part = arr.slice(1, 4).reverse(); // Обратить подмассив
console.log(part);
[4, 3, 2]

Использование с объектами массива

Пример javascript
const objArray = [{id: 1}, {id: 2}, {id: 3}];
objArray.reverse(); // Меняет порядок объектов
console.log(objArray.map(o => o.id));
[3, 2, 1]

Обращение typed array

Пример javascript
const buffer = new Uint8Array([1, 2, 3]);
buffer.reverse();
console.log(buffer);
Uint8Array(3) [3, 2, 1]

Рекурсивное обращение вложенных структур

Пример javascript
function deepReverse(arr) {
  return arr.reverse().map(item => 
    Array.isArray(item) ? deepReverse(item) : item
  );
}
console.log(deepReverse([1, [2, 3], [4, [5, 6]]]));
[[[6, 5], 4], [3, 2], 1]

JS reverse function comments

En
Reverse Reverses the order of the elements in an array