Код Middle Прототипы и классы обновлено

Расширение Array исключением по индексам

Условие

Добавь массивам метод except(indexes): возвращает элементы, кроме тех, чьи индексы переданы. Аргумент - массив индексов или одно число. Верни функцию install().

Что проверяют тесты

  • по массиву индексов

  • по одному числу

  • несуществующий индекс

  • исходный массив не меняется

Как подойти

Set по исключаемым индексам даёт O(1) на проверку вместо includes по массиву. Нормализация аргумента в начале избавляет от ветвлений дальше. Расширять встроенные прототипы в продакшене не стоит - конфликт с будущими версиями языка; на собеседовании это стоит проговорить, а не молча сделать.

Подсказки: 2
  1. Внутри метода прототипа this - сам массив.
  2. Приведи аргумент к массиву один раз, дальше работай единообразно.

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.