Javascript 通过对象值对json项进行排序
如果我有下面的JSON,我需要循环遍历数组中的每个对象,并通过num键对它们进行排序,然后吐出name值,我该如何再次这样做?我真的在放屁,记不起来了Javascript 通过对象值对json项进行排序,javascript,json,sorting,Javascript,Json,Sorting,如果我有下面的JSON,我需要循环遍历数组中的每个对象,并通过num键对它们进行排序,然后吐出name值,我该如何再次这样做?我真的在放屁,记不起来了 [{ "name": "bob", "num": 16 }, { "name": "mary", "num": 45 }, { "name": "tyler", "num": 3 }, { "name": "rebecca", "num": 70 }
[{
"name": "bob",
"num": 16
},
{
"name": "mary",
"num": 45
},
{
"name": "tyler",
"num": 3
},
{
"name": "rebecca",
"num": 70
},
{
"name": "michelle",
"num": 81
}]
如果要升序排序,可以使用内置函数
sort
和自定义比较器,然后map
将结果映射到名称数组:
var数据=[{
“姓名”:“鲍勃”,
“数字”:16
},
{
“姓名”:“玛丽”,
“数字”:45
},
{
“姓名”:“泰勒”,
“num”:3
},
{
“姓名”:“丽贝卡”,
“数字”:70
},
{
“姓名”:“米歇尔”,
“num”:81
}
];
log(data.sort((a,b)=>a.num-b.num.map(e=>e.name))代码>您将需要
据我所知,您的请求可以通过以下方式执行此任务:
[{
"name": "bob",
"num": 16
},
{
"name": "mary",
"num": 45
},
{
"name": "tyler",
"num": 3
},
{
"name": "rebecca",
"num": 70
},
{
"name": "michelle",
"num": 81
}].sort((a,b)=>a.num-b.num).map(a=>a.name)
谢谢大家。一天结束的时候,你会忘记一切。
[{
"name": "bob",
"num": 16
},
{
"name": "mary",
"num": 45
},
{
"name": "tyler",
"num": 3
},
{
"name": "rebecca",
"num": 70
},
{
"name": "michelle",
"num": 81
}].sort((a,b)=>a.num-b.num).map(a=>a.name)