如果我想调用这样的函数:
moo({ a: 4 });
通常,我必须像这样说出我的函数定义:
function moo(myArgObj) {
print(myArgObj.a);
}
但是这个令人敬畏的语法在spidermonkey中用于定义函数是完全有效的:
function moo({ a, b, c }) { // valid syntax!
print(a); // prints 4
}
我能找到相关信息的任何想法?我想看看这个功能有多强大.
我刚才在javascript / ecmascript 5中看过它,但我再也找不到了.它没有出现在我可以在youtube上找到的任何视频中,并且在标准的PDF本身中没有提到它.
最佳答案 它叫做
destructuring.你可能会在
MDN: Destructuring assignment找到最多的信息.
ECMAScript标准讨论可以在their wiki page找到,有趣的可能是this blog post在dailyjs.