[英]How to sort Array by alpha of a specific key inside each object?
我的數組示例
[{
name: leon,
id: 1
}, {
name: laura
id: 20003
}, {
name: anne
id: 45
}]
當前在用戶界面中,數組如下所示:
如何使用lodash通過name
鍵按字母順序對數組進行排序?
_.sortBy(myObjects, 'name');
名稱是此處的排序鍵
您不需要lodash來做...
做就是了
var sortedNames = names.sort(function(a, b) {
return a.name.localeCompare(b.name);
});
或將其包裝在類似以下的函數中:
function sortBy(obj, key) {
return obj.sort(function(a, b) {
return a[key].localeCompare(b[key]);
});
}
您可以使用適當的回調。
var array = [{ name: 'leon', id: 1}, { name: 'laura', id: 20003}, { name: 'anne', id: 45}]; array.sort(function (a, b) { return a.name.localeCompare(b.name); }); console.log(array);
不確定是否有loadash,但是您可以使用簡單的排序方法對對象的json數組進行排序
var arry=[{
name: 'leon',
id: 1
}, {
name: 'laura',
id: 20003
}, {
name: 'anne',
id: 45
}]
var sorted = arry.sort(function(a,b){
return a.name > b.name ? 1:-1
})
// this part just for demo
sorted.forEach(function(item){
document.write('<pre>'+item.name+'</pre>')
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.