destructuring相关内容

来自元组的JavaScript变量赋值

在Python 2和Python 3等其他语言中,您可以为元组变量定义和赋值,并检索它们的值,如下所示: tuple =(“Bob”,24) name,age = tuple print(name)#name评估为Bob print(age)#age评估为24 JavaScript中有类似内容吗?或者我只需要用数组的丑陋方式来做: tuple = [ ..
发布时间:2019-02-20 21:34:23 前端开发

什么是解构分配及其用途?

我一直在阅读解构分配在ES6中引入。 这种语法的目的是什么,它为什么被引入,以及在实践中如何使用它的一些例子? 解决方案 什么是解构分配? 解构赋值 语法是一个JavaScript表达式,可以将数组中的值或对象的属性解包为不同的变量。 一些用例 1。要从Objects中获取变量值,数组 让obj = {'a':1,'b':{'b1':'1.1'}}让{a,b, ..
发布时间:2019-02-19 19:22:35 前端开发

带块的常量声明

最近我正在研究Firefox Add-on Builder SDK源代码,以及偶然发现了这样的常量声明: const {getCodeForKey,toJSON} = require(“../../ keyboard / utils” ); 我可以找到有关 CommonJS模块,但是这项任务的左侧部分让我感到困惑,因为它必须是特定于语言的,而且我无法谷歌上的任何内容。 ..

JavaScript中的解构赋值

从Mozilla changlog for JavaScript 1.7中可以看出,他们已经添加了解构分配。可悲的是我不太喜欢语法(为什么要写a和b两次?): var a,b; [a,b] = f(); 这样的事情会好很多: var [a,b] = f(); 这仍然是向后兼容的。类似Python的解构不会向后兼容。 无论如何,我能 ..
发布时间:2019-01-22 20:27:12 前端开发

我可以在if语句中以某种方式使用解构吗?

有没有办法可以做这样的事情? if({color,size,shape} = this。道具){ console.log('收到所有道具!'); } else { console.log('有一些丢失的道具'); } 我想知道我是否通过我的Component的道具收到了所有需要的数据, 如果没有则抛出错误。 这是用于创建可重用组件。 解决方案 你 ..
发布时间:2018-07-17 09:19:46 前端开发

如何使用对象解构来处理嵌套的默认参数?

我试图弄清楚是否可以通过解构来处理多个级别的默认参数。由于用文字解释并不容易,下面是一个循序渐进的例子...... 1 - 使用默认参数解构扁平对象 解构此对象很简单: let obj = { foo:'Foo', bar:'Bar' }; 使用 {foo ='Foo',bar ='Bar'} = {} 在函数签名中,如果在调用函数时没有参数传递,则会创建 ..

为什么不以def的形式破坏?

在让窗体(这里是Clojure),我可以做一些类似于 (do-something-with uv)) 其中 svd 返回一个长度为三的列表。这是一个非常自然的事情,为什么不是我们没有我们没有 (def [ usv](svd A)) 及其各种一般化作为 def form?我不明白这会干扰 def 已经在做的任何事情。能理解Lisp或Clojure的Zen的 ..
发布时间:2018-04-17 11:31:22 其他开发

在ES6 / ES2015中,将一个对象的属性映射到另一个对象是否有更简单的方法?

说我有一个对象 foo ,属性 a 和 b ,但是我想将这些属性的值传输到另一个对象 bar ,其中 x 和 y ,其中 bar.x 获取 foo.a 和 bar.y 获取 foo.b 的值。 使用ES5完成此任务的第一个方法如下: var foo = {a:5,b:17}; var bar = {x:foo.a,y:foo.b}; 这已经很简洁了,但不得不引用 ..
发布时间:2017-08-03 21:41:06 前端开发

如何使用无效变量名称的键名称来重构对象属性?

由于对象键是字符串,它们可以包含任何类型的字符和特殊字符。我最近偶然发现了一个API调用接收到的对象。这个对象的关键字是' - '。 const object = { “key-with-dash” :[] } 在这种情况下,结构不起作用,因为 key-with-dash 不是有效的变量名。 const {key-with- dash} = object; ..
发布时间:2017-08-03 21:36:09 前端开发