Function.prototype.call不能在高阶函数和/或箭头函数中工作吗?

时间:2017-03-12 16:17:55

标签: javascript this higher-order-functions arrow-functions

我尝试在对象数组上使用高阶函数(map,find,filter,reduce等)。在回调中,我需要在这些对象中使​​用一个函数,并使用正确的'这个'论点。像这样:



const something = [
  {
    x: 42,
    f: y => this.x + y
  },
  {
    x: 13,
    f: y => this.x - y
  }
]

const result = something.map(obj => obj.f.call(obj, 10));




我预计结果是[52,3],但我得到了这个:

  

TypeError:无法读取属性' x'未定义的

你能帮助我吗

  • 了解这里发生的事情
  • 前进'这个'在我的功能里面?

谢谢!

0 个答案:

没有答案