我有一个对象数组:
var object = [
{
"id": 1,
"name": "Vehicles"
},
...
我想从每个对象中提取“名称”并将其排序在“名称”数组中,然后显示每个“名称”。
我是这样做的:
- 我遍历每个对象并获取“名称”并将其放入一个数组中。
- 然后,我遍历数组并将每个“名称”显示到我要查找的位置 想要。
有没有办法同时做这两个 Action ?
最佳答案
由于您已经对值进行了排序和附加,问题是如何摆脱其中一个循环,而不是重复两次。
可以映射和排序,只需加入数组即可摆脱最后一个循环并一次性追加所有内容
$(document).ready(function() {
$('.lol').append(object.map(x => x.name).sort().join('<br />'));
});
var object = [{
"id": 1,
"name": "Vehicles"
}, {
"id": 2,
"name": "Mobiles & Tablets"
}, {
"id": 3,
"name": "Electronics & Appliances"
}, {
"id": 4,
"name": "Real Estate"
}, {
"id": 5,
"name": "Home & Lifestyle"
}, {
"id": 6,
"name": "Jobs"
}, {
"id": 7,
"name": "Services"
}, {
"id": 8,
"name": "Education & Training"
}, {
"id": 9,
"name": "Entertainment"
}, {
"id": 10,
"name": "Pet & Pet Care"
}, {
"id": 11,
"name": "Community"
}, {
"id": 12,
"name": "Events"
}, {
"id": 13,
"name": "Matrimonial"
}];
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p class="lol"></p>
关于javascript - 从对象数组中提取数据并按字母顺序排序(同时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40510096/