For loop -Implement map on a Prototype

For loop -Implement map on a Prototype
0.0 0


Tell us what’s happening:

Your code so far

// the global Array
var s = [23, 65, 98, 5];

Array.prototype.myMap = function(callback){
  var newArray = [];
  // Add your code below this line
  let copy = this.slice(0); //copy the array in order to return a new one without modify the orinial array.

  for(let i=0 ; i<copy.length;i++ ){
  // Add your code above this line
  return newArray;


var new_s = s.myMap(function(item){
  return item * 2;

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36.

Link to the challenge:

I can’t figure out how to write a reusable myMap function…


You need to use the callback argument to modify each array element pushed into newArray. All you have currently done is make a copy of the original array and pass the copy back. Do you understand how map works?


Yes, I understand how map() works, but not so sure about callback function.
I think I need to check more examples about callback function…


I solved the problem~Thank you!