大括号在以下函数定义中意味着什么?

时间:2015-08-12 09:37:03

标签: javascript ecmascript-6

以下函数定义中括号的含义是什么?

set timeout timeoutlen=1000 ttimeoutlen=100
set <F13>=XXXX[27;5;9~
nnoremap <F13> gt
set <F14>=XXXX[27;6;9~
nnoremap <F14> gT

1 个答案:

答案 0 :(得分:6)

在ES6中,这被称为Object Destructuring

在该特定方面,它意味着我可以将对象作为函数的参数传递,并将转换转换为我可以在该函数中访问的变量,例如:

function f(param1, { param2, param3 }) {
  console.log(param2, param3)
}
f("one", {
  param2: "A",
  param3: "B"
});

Babel REPL Example

优点是代替调用:

f("one", myObject.one, myObject.two);

我可以简单地致电:

f("one", myObject);

我会相应地为我映射onetwo个参数。