【问题标题】:Method declaration difference between foo() {}, and foo: function() {} [duplicate]foo() {} 和 foo 之间的方法声明区别:function() {} [重复]
【发布时间】:2021-10-31 07:38:37
【问题描述】:

这两种类型的声明之间有什么区别吗?或者它只是一个简单的东西?

const bar = {
  foo: function() { return 0 },
}
const bar = {
  foo() { return 0 },
}

【问题讨论】:

  • 谢谢安迪,我看过这个 MDN 页面,但我没有看到对此的具体保证。
  • 你是对的,我的错
  • 既然它说这是一个简写,那么可以合理地预期这两种语法在功能上是相同的。
  • 是的,我的错。谢谢

标签: javascript


【解决方案1】:

ES5 语法如下所示:

const var = {
  foo: function() { return 0 }
}

ECMAScript 2015 允许开发人员为对象的方法定义编写更短的语法。

const bar = {
  foo() { return 0 }
}

两者是相同的,第二种语法是一种更短更现代的方法。

【讨论】:

  • 他们不一样。方法语法创建一个不可构造函数,即new bar.foo 将失败。
猜你喜欢
  • 2011-05-17
  • 2012-07-26
  • 1970-01-01
  • 1970-01-01
  • 2015-03-08
  • 2016-12-01
  • 1970-01-01
  • 2017-07-04
  • 1970-01-01
相关资源
最近更新 更多