我总是这样定义methods in objects:
{
a: function(par1, par2) { },
}
但最近我看到了这一点(我认为这是等效的,但我不确定):
{
a(par1, par2) { },
}
什么时候引入了这种语法?
答案 0 :(得分:2)
您所指的是ES6 Extended Object Literal支持的一部分。
你认为你的两个例子在功能上是等价的是正确的。
答案 1 :(得分:1)
它是ES6语法,速记和功能相同。
答案 2 :(得分:1)
是的, 这是新的ES6方式
旧方式
var obj = {
foo: function() {},
bar: function() {}
};
新方式
通常你可以使用旧语法,新的语法是可选的但是更短
var obj = {
foo() {},
bar() {}
};
当你做那样的事情时,最好跳过重复
function method(){};
return {
method: method
};
可能看起来像
return {
method
};
您可以在es6类定义中找到相同的语法
class MyClass {
constructor(geometry, materials) {}
update(camera) {}
get boneCount() {}
set matrixType(matrixType) {}
}
祝你好运
叶戈尔