destructuring相关内容

析构分配缺省值

我正在学习Java脚本,当我试图在解构时给变量一个缺省值时,我有点被ES6语法卡住了。 基本上,我尝试给一个变量赋值,该变量给一个对象的属性的值,如果该值为FALSE/NULL/UNDEFINED,我希望它是一个空对象。 例如, let foo = { prop1: 'hello!', prop2: null } c ..

可以使用解构赋值来影响 CoffeeScript 中的投影吗?

我在理解 CoffeeScript 中的解构赋值时遇到了一些麻烦.documentation 包含几个示例,它们似乎暗示在分配期间重命名对象可以用于投影(即映射、翻译、变换)源对象. 我正在尝试将 a = [ { Id: 1, Name: 'Foo' }, { Id: 2, Name: 'Bar' } ] 投影到 b = [ {x: 1 }, { x: 2 } ].我尝试了以下但没有成功;我 ..
发布时间:2022-01-24 11:10:39 前端开发

来自元组的 JavaScript 变量赋值

在 Python 2 和 Python 3 等其他语言中,您可以定义元组变量并为其赋值,然后像这样检索它们的值: tuple = ("Bob", 24)姓名,年龄=元组print(name) #name 计算结果为 Bobprint(age) #age 计算为 24 在 JavaScript 中有没有类似的东西?还是我只需要使用数组以丑陋的方式来做: tuple = ["Bob", 24]n ..
发布时间:2022-01-19 23:45:32 前端开发

如何使用 ES6 中的所有默认值解构选项参数?

我在 babel 编译器中使用 ES6 特性.我有一个将选项对象作为参数的函数: function myFunction({ option1 = true, option2 = 'whatever' }) {控制台日志(选项1,选项2);//做一点事...} 当我调用它时,会发生解构并且一切正常.大多数时候我想用默认选项调用它,所以我这样做: myFunction({});//true '随 ..
发布时间:2021-12-23 11:54:01 前端开发

ES6 解构和模块导入

我的印象是这种语法: 从'react-router'导入路由器;var {Link} = 路由器; 具有与此相同的最终结果: import {Link} from 'react-router'; 谁能解释一下有什么区别? (我原本以为这是一个 React Router Bug.)> 解决方案 import {Link} from 'react-router'; 从 react- ..
发布时间:2021-12-23 11:40:21 前端开发

Node.js“require"语句中的大括号(大括号)

我试图理解下面两个“要求"语句之间的区别. 具体来说,包裹在 ipcMain 周围的 { } 的目的是什么? const electron = require('electron')const {ipcMain} = 要求('电子') 它们似乎都分配了 electron 模块的内容,但它们的功能显然不同. 有人能解释一下吗? 解决方案 第二个例子使用解构. 这将调用从 ..
发布时间:2021-12-23 11:40:03 前端开发

解构以获取 es6 中数组的最后一个元素

在 coffeescript 中,这很简单: 咖啡>a = ['a', 'b', '程序'][ 'a', 'b', '程序' ]咖啡>[_..., b] = a[ 'a', 'b', '程序' ]咖啡>乙'程序' es6 是否允许类似的东西? >常量 [, b] = [1, 2, 3]'使用严格'>b//它得到了第二个元素,而不是最后一个!2>const [...butLast, last] ..
发布时间:2021-12-23 11:37:14 其他开发

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

由于对象键是字符串,它们可以包含任何类型的字符和特殊字符.我最近偶然发现了一个从 API 调用中收到的对象.此对象的键名中包含“-". const 对象 = {“带破折号的键":[]} 在这种情况下解构不起作用,因为 key-with-dash 不是有效的变量名. const { key-with-dash } = object; 于是我想到了一个问题.在这种情况下,我应该如何解构对象?甚 ..
发布时间:2021-12-23 11:33:42 前端开发

在哪里可以获得有关 JavaScript 函数的对象参数语法的信息?

如果我想调用这样的函数: moo({ a: 4 }); 通常我必须像这样表述我的函数定义: function moo(myArgObj) {打印(myArgObj.a);} 但是这个很棒的语法在spidermonkey中完全有效用于定义函数: function moo({ a, b, c }) {//语法正确!打印(一);//打印 4} 这是什么功能? 解决方案 这叫做解构.您 ..
发布时间:2021-12-23 11:26:41 前端开发

解构和重命名属性

const a = {乙:{' '嗨!}};const { b: { c } } = a; 在这种情况下可以重命名 b 吗?我想要获取 c 并重命名 b. 解决方案 您可以通过重命名进行解构,并采用相同的属性进行解构. const a = { b: { c: '嗨!'} };const { b: 前 B, b: { c } } = a;控制台日志(前B)console.log(c) ..
发布时间:2021-12-11 19:35:53 前端开发