Implement map on a Prototype using for..loops

Implement map on a Prototype using for..loops
0

#1

How do I use for…loops to solve this problem?
I have seen the solution and it uses this.forEach(…) but I’m not sure how to achieve this problem using for…loops. Thank you

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

Array.prototype.myMap = function(callback){
  var newArray = [];
  // Add your code below this line
  this.forEach(a => newArray.push(callback(a)));
  // 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/69.0.3497.100 Safari/537.36.

Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/functional-programming/implement-map-on-a-prototype


#2

It would be too easy if i would give you ready answer, because its really simple.

Imagine that keyword this is just an array.
Callback(actual position/index in this array) returns a value you want to push in newArray (just like in forEach).

I assume you are familiar with for loop at this stage.
Try :slight_smile: one more time.