我有一个JSON输入格式,这是一个例子:
{
"friends": [
{
"id": "5a8d4euyiuyiuyhiuyc022c7158d5",
"name": "Gloria Coffey"
},
{
"id": "5a8d4e2rytuyiyuyiytiy3e426",
"name": "Shawn Ellison"
}
]
}
我会将它转换为数组键:值数组,如下所示:
[[id : "5a8d4euyiuyiuyhiuyc022c7158d5", name:"Gloria Coffey"],[id : "5a8d4e2rytuyiyuyiytiy3e426", name:"Shawn Ellison"]]
我做了什么 :
search(event) {
this.searchRmpmService.getResults(event.query).then(data => {
this.results = data.friends;
console.log(this.results);
let output = [];
output= Object.entries(this.results);
console.log(output);
});
this.results
的第一个console.log打印出一系列对象
然后我的output
阵列打印:
0:Array(2)
0:"0" <-- ??
1:{
id:"5a8d4e2ffead0c022c7158d5",
name:"Gloria Coffey"
}length:2__proto__:Array(0)
我想要的是什么
id : 5a8d4e2ffead0c022c7158d5
name : Gloria Coffey
你想要实现的目标是不可能的。你想要的最接近的解决方案是这样的:
let friends = [
{
id: "5a8d4euyiuyiuyhiuyc022c7158d5",
name: "Gloria Coffey"
},
{
id: "5a8d4e2rytuyiyuyiytiy3e426",
name: "Shawn Ellison"
}
]
function convert(param) {
let res = {}
for (let item of param) {
let id = item.id
res[id] = item.name
}
return res
}
console.log(convert(friends))
这不是一个数组,但你可以访问它:
let myObj = convert(friends)
console.log(myObj['5a8d4euyiuyiuyhiuyc022c7158d5'])
我希望这会做你想要的。