@Alex_bliznec

Как написать полифилл метода .unshift()?

Всем добрый день! Пишу полифилл для метода unshift, по логике понимаю, что необходимо сдвинуть все индексы в сторону увеличения для освобождения индекса 0 в массиве, но как практически реализовать не понимаю. Подскажите как это сделать? А также может быть кто-то подскажет, есть ли где-то в сети исходный код методов JS, что бы можно было посмотреть как это вообще реализовано.
  • Вопрос задан
  • 870 просмотров
Решения вопроса 1
hzzzzl
@hzzzzl
Array.prototype.myUnshift = function(...args) { 
  return [...this, ...args]
}

[3,5].myUnshift(34,52,25)
// [3, 5, 34, 52, 25]
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@kacheleff
fullstack developer
вторая ссылка в гугле
Для тех, кому лень смотреть:
Array.prototype.unshift = function(){
  Array.prototype.splice.call( arguments, 0, 0, 0, 0 );
  Array.prototype.splice.apply( this, arguments );
  return( this.length );
};
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы