【问题标题】:How does the Arrow function work in ECMAScript6箭头函数在 ECMAScript6 中是如何工作的
【发布时间】:2014-10-10 17:31:50
【问题描述】:

我正在研究数学程序并准备实现ECMAScript6 Arrow 的新功能。 这与C# 中的Lambda 表达式非常相似。

let square = y => y * y;
console.log(square(4));

我在使用Arrow 函数后实现了我的目标,但仍然对Arrow 函数的工作原理感到困惑。

它是否像Lambda 表达式一样工作。谁能指导我。

谢谢

【问题讨论】:

  • “与函数表达式相比,箭头函数表达式的语法更短,并且在词法上绑定了 this 值。箭头函数始终是匿名的。”直接从这里developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
  • “它是如何工作的”在什么意义上?喜欢底层的 JS 引擎实现吗?
  • 你到底对什么感到困惑?
  • 嗨@FelixKling 在得到@Moogs 的回答后,我能够理解Arrow 的工作原理

标签: javascript ecmascript-6 arrow-functions


【解决方案1】:

本质上是这样做的:

var square = function(y) {
  return y * y;
}.bind(this);

this 绑定到外部作用域。

【讨论】:

  • 将关闭的};改为}.bind(this);即可显示绑定说明
  • 我很感激投反对票的理由,这样我就可以提高我的回答质量。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-28
  • 2020-09-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多