我知道如何使用myArray.map( fn )
来应用整个数组的方法。
虽然它看起来很怪异和笨拙,但我想运行每个对象方法,并将参数作为自己。像
function MyObject(i) {
this.i = i;
this.internalMethod = function () {
return this.i * 100
}
}
function externalMethod(object){
return object.i * 100
}
var objects = [new MyObject(3), new MyObject(-1), new MyObject(5)]
objects.map ( externalMethod ) // This works but
/// [300, -100, 500]
objects.map ( arrayElements.internalMethod )
答案 0 :(得分:1)
将内部函数包装在匿名函数中,并将其传递给当前映射的对象。
var newObj = objects.map(function(curr) {
return curr.internalMethod()
});
console.log(newObj)
// [300, -100, 500]