为什么将解构引入 ECMAScript 6?
问问题
99 次
3 回答
4
简单的例子:
var {forEach} = Array.prototype;
forEach.call(document.querySelector(...
参数解构很有趣:
function ({opt1 = true, opt2 = false, opt3} = {}) { ...
于 2014-10-11T18:17:25.893 回答
4
这是另一个:Map#entries
返回元组上的迭代器(key, value)
。迭代它们的最优雅的方法是使用解构:
for (var [key, value] of map.entries()) {
// ...
}
于 2014-10-11T19:45:12.897 回答
2
不知道我为什么要使用
[x, y] = [y, x]
.
因为使用一个额外的变量两个交换两个值很麻烦,而且 JS 的传值函数调用不允许你编写 swap
函数。
ECMAScript 6 的解构功能最引人注目的用例?
我能想到的,这主要用于
多个函数返回值
function rgb2hsv(r, g, b) { … return {h, s, v}; } … var {h, s, v} = rgb2hsv(…);
Promise.spawn(function* () { … var [a, b] = yield [async1(), async2()]; … })
导入模块,例如
var {abs, trunc, round} = require('Math')
于 2014-10-11T17:56:48.323 回答