怎么把数组中的多个指定键以及对应值 排到新数组中

img

把data.nav中的 id和name以及对应的值 取出来 并以id:“id” ,name:“name”的形式排列到新数组中

你题目的解答代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)

var jsonStr = `{
    "object": {
        "data": {
            "nav": [
                {
                    "id": "id1",
                    "img": "xxxxxxxxxx.jpg",
                    "icon": "xxxxxxxx.png",
                    "name": "aaa"
                },
                {
                    "id": "id2",
                    "img": "xxxxxxxxxx.jpg",
                    "icon": "xxxxxxxx.png",
                    "name": "bbb"
                },
                {
                    "id": "id3",
                    "img": "xxxxxxxxxx.jpg",
                    "icon": "xxxxxxxx.png",
                    "name": "ccc"
                }
            ]
        }
    }
}`;

var jsonObj = JSON.parse(jsonStr);
var arr = jsonObj.object.data.nav.map(function(v, i){
    return {"id": v.id,"name": v.name};
});
console.log(arr);

img

遍历json数组,并且定义对象数组,将json中的id,name值取出来存放对象数组中就行。
var arr=eval('(' + str + ')');
for(var i in arr){
  console.log(arr[i].id+“ ”+arr[i].name);
}