San*_*ejű 3 javascript json object
抱歉,这可能很微不足道,但我仍然找不到解决方案:
我有一个包含以下元素的对象:
0: "A"
1: "B"
2: "C"
Run Code Online (Sandbox Code Playgroud)
我想使用 map() 函数将其转换为如下所示:
0: {name: "A"}
1: {name: "B"}
2: {name: "C"}
Run Code Online (Sandbox Code Playgroud)
如果我使用这个:
this.xxx = this.operations.map(obj => obj.name);
console.log(this.xxx);
Run Code Online (Sandbox Code Playgroud)
或这个:
this.xxx = this.operations.map(obj => {name:obj} );
console.log(this.xxx);
Run Code Online (Sandbox Code Playgroud)
xxx 的元素未定义。
spe*_*der 10
当你写的时候
someArray.map(obj => {
//this is a code block, not an object definition
} )
Run Code Online (Sandbox Code Playgroud)
大括号括起代码块,而不是对象文字。
如果您希望箭头函数返回一个对象,JS 要求您用括号将对象字面量括起来,以便正确解析您的意图。
像这样:
this.operations.map(obj => ({name: obj}) )
Run Code Online (Sandbox Code Playgroud)
将修复您的映射。
或者,如果您想做更复杂的事情,请使用代码块并返回值:
this.operations.map(obj => {
// do some calculations
return {name: obj};
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3836 次 |
| 最近记录: |