Полное обнуление массива

Присвойте массиву length = 0. Это удаляет его элементы на месте, поэтому все переменные, ссылающиеся на тот же массив, увидят пустой массив.

Короткий ответ

Что ответить на собеседовании

Присвойте массиву length = 0. Это удаляет его элементы на месте, поэтому все переменные, ссылающиеся на тот же массив, увидят пустой массив.

Подробный разбор

Ответ с пояснениями

Условие

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

Ответ

Присвойте массиву length = 0. Это удаляет его элементы на месте, поэтому все переменные, ссылающиеся на тот же массив, увидят пустой массив.

function clearArray(array) {
  array.length = 0;
  return array;
}
const values = [1, 2, 3];
const alias = values;
clearArray(values);
console.log(alias); // []

Присваивание array = [] внутри функции только сменило бы локальную ссылку и не очистило исходный массив. Альтернатива с мутацией — array.splice(0, array.length). Решение предполагает обычный изменяемый массив: замороженный объект таким способом очистить нельзя.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее