[英]Renaming object keys destructuring with a symbol or a number
我只是想知道是否有办法用符号或数字作为新名称重命名 object 键值。 我知道您可以像这样重命名 object:
let totalValues = {3V: 2.09, fg%V: 3.02}
const {'3V': threev, 'fg%V': fgV } = totalValues;
totalValues = {threev, fgV };
有没有办法在它工作的情况下重命名这样的值?
let totalValues = {3V: 2.09, fg%V}
const {'3V': 3PM, 'fg%V': FG%} = totalValues;
totalValues = {3PM, FG%};
%
在声明变量名时是无效符号,但在 JSON object 命名中是合法的。
你可以像这样重命名和解构,只要你重命名的变量是合法的。
数字在变量中是有效的,只要伴随着一个非数字值。
let totalValues = {'3V': 2.09, 'fg%V': 3.02};
let { 'fg%V': fgv } = totalValues;
console.log(fgv); // 3.02
快乐编码!
您可以创建 object 像from:to
name
const totalValues = { '3V': 2.09, 'fg%V': 3.02, do_not_rename: 1 }; const renameFromTo = { '3V': '3PM', 'fg%V': 'FG%', }; const result = Object.entries(renameFromTo).reduce( (acc, [from, to]) => ({...acc, [from]: undefined, [to]: acc[from] }), totalValues, ); console.log(result);
在 javaScirpt 中命名变量有特定的规则,你不能以数字开头变量名或使用除_
之外的特殊字符,所以在破坏时你实际上是在创建变量,所以你必须遵守规则。 核实
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.