Вебсправочник
Справочник JavaScript

Array.reverse(): обратный порядок и мутация

Метод reverse разворачивает порядок элементов существующего массива и возвращает ссылку на этот же массив.

Назначение

Метод reverse разворачивает порядок элементов существующего массива и возвращает ссылку на этот же массив.

Как это работает

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

Пример

const values=[1,2,3];
const result=values.reverse();
console.assert(result===values);
console.assert(JSON.stringify(values)==="[3,2,1]");

Что должно получиться

Обе переменные указывают на массив [3,2,1]. Метод удобен при намеренной мутации, но требует внимания в коде, где исходный порядок используется в другом месте.

Граница применения и частая ошибка

Не присваивайте результат другой переменной в надежде сохранить исходный порядок. Две переменные будут ссылаться на один изменённый массив.

Самостоятельная проверка

Проверьте равенство результата и исходника по ссылке. Затем разверните копию через spread и убедитесь, что первоначальная коллекция осталась без изменений.

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

Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.