如果我想这样调用一个函数:
moo({ a: 4 });
通常我要这样表述我的函数定义:
function moo(myArgObj) {
print(myArgObj.a);
}
但是这种非常棒的语法在SpiderMonkey中用于定义函数是完全有效的:
function moo({ a, b, c }) { // valid syntax!
print(a); // prints 4
}
这是什么功能?
如果我想这样调用一个函数:
moo({ a: 4 });
通常我要这样表述我的函数定义:
function moo(myArgObj) {
print(myArgObj.a);
}
但是这种非常棒的语法在SpiderMonkey中用于定义函数是完全有效的:
function moo({ a, b, c }) { // valid syntax!
print(a); // prints 4
}
这是什么功能?
它被称为解构赋值。你可能会在MDN: 解构赋值语句找到最多的信息(尤其是查看将对象作为函数参数传递时的字段拆分)。