typescript - 使用不是有效变量名称的属性名称进行对象解构

标签 typescript ecmascript-6 destructuring

有谁知道您是否可以在属性名称中使用带空格的对象解构?也许这无法完成,我意识到 JavaScript 符号不正确,但我无法更改服务器 json 响应。

var obj1 = {name: 'Mr Smith', age: 21};
//destructure
var {name, age} = obj1;
//name='Mr Smith' and age=21

这按预期工作。

但是当我有以下对象结构时,我是否可以使用对象解构?

var obj2 = {"my name": "Mr Jones", age: 22};
var {'my name', age} = obj2; 

如果这是不可能的如果我可以用某种语法如'as'...分配变量会很好

var {'my name' as name, age} = obj2; //name='Mr Jones';

谢谢

最佳答案

您可以使用以下语法为其分配一个有效的变量名:

var {"my name": myName, age} = obj2; 

// use myName here

关于typescript - 使用不是有效变量名称的属性名称进行对象解构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36577568/

相关文章:

javascript - 从脚本中删除调试器行

带有嵌套数组的 Angular 接口(interface)

javascript - ES6 中解构对象作为参数

javascript - 从 Javascript 中的异步闭包中访问类成员

javascript - 如何覆盖错误堆栈 getter

javascript - 如何在 JavaScript 中使用解构——在将传递给 React 组件的辅助函数中?

variable-assignment - *为什么*列表分配会变平其左侧?

javascript - 字符串变量值作为类型中的属性

c# - 如何将文件从 Angular 上传到 ASP.NET Core Web API

javascript - 如何将 Javascript 中的对象数组解构为 ES6 中的两个预定义变量?