Javascript Typescript将对象映射到其他结构
我有一个混凝土结构的物体。我想创建另一个,具有其他结构…类似于.map() 我想将其映射到其他对象结构:Javascript Typescript将对象映射到其他结构,javascript,typescript,dictionary,Javascript,Typescript,Dictionary,我有一个混凝土结构的物体。我想创建另一个,具有其他结构…类似于.map() 我想将其映射到其他对象结构: const Object2: Type2 = { :D: { iconClass: 'emoticon-3', name: 'Laughing :D', }, :O: { iconClass: 'emoticon-4', name: "Surprise, No you di'int' :O", } ....... } 您可以使用和。用于将
const Object2: Type2 = {
:D: {
iconClass: 'emoticon-3',
name: 'Laughing :D',
},
:O: {
iconClass: 'emoticon-4',
name: "Surprise, No you di'int' :O",
}
.......
}
您可以使用和。用于将dataText
作为单独的变量获取,并将剩余的属性获取为rest
变量,如下所示:{dataText,…rest}
const obj={
大笑:{
iconClass:“表情符号-3”,
名字:“笑:D”,
dataText:':D',
},
惊喜:{
iconClass:“表情符号-4”,
姓名:“惊喜,不,你不知道”:O“,
dataText:':O',
}
}
const newObj=Object.values(obj).reduce((acc,{dataText,…rest})=>{
acc[dataText]=rest;
返回acc
}, {})
console.log(newObj)
您可以使用和。用于将dataText
作为单独的变量获取,并将剩余的属性获取为rest
变量,如下所示:{dataText,…rest}
const obj={
大笑:{
iconClass:“表情符号-3”,
名字:“笑:D”,
dataText:':D',
},
惊喜:{
iconClass:“表情符号-4”,
姓名:“惊喜,不,你不知道”:O“,
dataText:':O',
}
}
const newObj=Object.values(obj).reduce((acc,{dataText,…rest})=>{
acc[dataText]=rest;
返回acc
}, {})
console.log(newObj)
您可以使用array#map
创建对象数组,然后使用object.assign()
创建单个对象
const obj={Laughing:{iconClass:'emoticon-3',name:'Laughing:D',dataText:':D',},惊奇:{iconClass:'emoticon-4',name:'saughing,No you di'int':O',dataText:':O',},
结果=Object.assign(…Object.values(obj.map)({dataText,…o})=>({[dataText]:o}));
控制台日志(结果)
您可以使用array#map
创建对象数组,然后使用object.assign()
创建单个对象
const obj={Laughing:{iconClass:'emoticon-3',name:'Laughing:D',dataText:':D',},惊奇:{iconClass:'emoticon-4',name:'saughing,No you di'int':O',dataText:':O',},
结果=Object.assign(…Object.values(obj.map)({dataText,…o})=>({[dataText]:o}));
控制台日志(结果)代码>您可以使用隐式返回({…acc[dataText]:rest})来缩短正文@jo_va您是对的。我已经在答案中添加了这一点。您可以使用隐式返回({…acc[dataText]:rest})@jo_va缩短正文,您是对的。我在回答中加了这个。你在陈述一个要求。请尝试添加您尝试过的内容以及您在数据转换方面面临的问题。您正在陈述一项要求。还请尝试添加您尝试过的内容以及您在数据转换方面面临的问题。
const Object2: Type2 = {
:D: {
iconClass: 'emoticon-3',
name: 'Laughing :D',
},
:O: {
iconClass: 'emoticon-4',
name: "Surprise, No you di'int' :O",
}
.......
}