Хорошо, так продолжение, где мы остановились в прошлый раз,
карта
Это чистая функция, и его вывод зависит исключительно на его входах. Кроме того, это требует другая функция в качестве его аргумента.Вы можете многому узнать о
карта
Метод, если вы реализуете свою собственную версию. Рекомендуется использоватьдля
петля или массив. Прототип .Foreach ().Бывший:
var s = [24, 55, 96, 4]; Array.prototype.myMap = function(callback) { var newArray = []; // Only change code below this line // Only change code above this line return newArray; }; var new_s = s.myMap(function(item) { return item * 2; });
-
Массив
Экземпляр может быть доступен вMyMap
Способ использованияЭто
Отказ
var s = [24, 55, 96, 4]; Array.prototype.myMap = function(callback) { var newArray = []; for (let i = 0; i < this.length; i++) { // <--- newArray.push(callback(this[i])) } return newArray; }; var new_s = s.myMap(function(item) { return item * 2; });
new_s
должен равняться [48, 110, 192, 8].
Ларсон, Куинси, редактор. » Реализация карты на прототипе ». Https://www.freecodeCamp.org/ , Class Central, 2014, Twitter.com/ossia.
Оригинал: «https://dev.to/rthefounding/functional-programming-implementing-map-on-a-prototype-53a7»