我在Firefox addon-sdk中看到很多例子,它们在声明变量时使用了以下样式。
var { Hotkey } = require("sdk/hotkeys");
var { Hotkey }
与使用var HotKey
有何不同?为什么要使用额外的花括号?
答案 0 :(得分:14)
var {Hotkey} = require('sdk/hotkeys');
相当于:
var Hotkey = require('sdk/hotkeys').Hotkey;
另请参阅harmony:destructuring提案,其中包括以下示例:
// object destructuring
var { op: a, lhs: b, rhs: c } = getASTNode()
// digging deeper into an object
var { op: a, lhs: { op: b }, rhs: c } = getASTNode()