Array.prototype.map()
返回一个新数组。我想在作为参数传递给Array.prototype.map()
的回调函数中引用这个新数组。我能这样做吗?
实施例
someArray.map(function(item, idx, arr) {
return { theCreatedArray: xyz };
});
xyz
应该是什么?
编辑[背景]
为什么我要这个?我在回调中创建的对象是一种类型,它依赖于引用该对象的数组的引用。我不能这么容易地重构这个要求。我宁愿满足它。
答案 0 :(得分:4)
您无法使用.map()
执行此操作,但可以使用.reduce()
执行此操作:
someArray.reduce(function(rv, item, idx) {
// rv is the return value, in this case your array
rv.push({whatever: rv});
return rv;
}, []);