Questions tagged «destructuring»

“解构使您可以将变量集绑定到相应的一组值,而通常可以将值绑定到单个变量的任何位置”(“ Common Lisp语言”)。



3
对象解构中的类型
这个 const { foo: IFoo[] } = bar; 还有这个 const { foo: Array<IFoo> } = bar; 将合理地导致错误。 还有这个 const { foo: TFoo } = bar; 只会破坏TFoo财产。 如何为变形对象属性指定类型?

4
var {…} =…语句中的花括号有什么作用?
不知道这是否是Mozilla特定的JS语法,但是我经常发现以这种方式声明变量,例如,在附加SDK docs中: var { Hotkey } = require("sdk/hotkeys"); 并在各种Chrome Javascript中(let用代替var), let { classes: Cc, interfaces: Ci, results: Cr, utils: Cu } = Components; 我发现这很令人困惑,但是即使在MDN上,我也找不到有关这两种语法的任何文档。

12
解构以获取es6中数组的最后一个元素
在coffeescript中,这很简单: coffee> a = ['a', 'b', 'program'] [ 'a', 'b', 'program' ] coffee> [_..., b] = a [ 'a', 'b', 'program' ] coffee> b 'program' es6是否允许类似的东西? > const [, b] = [1, 2, 3] 'use strict' > b // it got the second element, not the last one! 2 > …

12
来自元组的JavaScript变量分配
在其他语言(例如Python 2和Python 3)中,您可以定义值并将其分配给元组变量,并按以下方式检索它们的值: tuple = ("Bob", 24) name, age = tuple print(name) #name evaluates to Bob print(age) #age evaluates to 24 JavaScript中有类似的东西吗?还是我只需要用数组来做一个丑陋的事情: tuple = ["Bob", 24] name = tuple[0] //name Evaluates to Bob age = tuple[1] //age Evaluates to 24 有没有更好的方法在JavaScript 5中模拟Python元组? 更新:请参阅有关ES6的答案,对于新项目,应优先于CoffeeScript。


3
JSDoc中的文档分解功能参数
以前,我总是记录我的对象参数,如下所示: /** * Description of the function * * @param {Object} config - The configuration * @param {String} config.foo * @param {Boolean} [config.bar] - Optional value * @return {String} */ function doSomething (config = {}) { const { foo, bar } = config; console.log(foo, bar); // do something } 但是我不确定使用分散的函数参数最好的方法是什么。我只是忽略对象,以某种方式定义它还是记录它的最佳方法是什么? …

3
Node.JS中的解构
最近的视频声称,EMCAScript 6解构已在Node.JS中部分实现。我尝试了各种示例(使用v0.10.12和--harmony标志),例如 var [a, b] = [1, 2]; 和 var {a: a, b: b} = {a: 1, b: 2}; 无济于事。此票证似乎表明V8尚不支持解构。 解构真的在Node.JS中部分实现了吗?我可以使用哪些代码片段?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.