Reputation:
I have an array of objects annd i want to sort by deeper field. How can i do this?
var array =
{
"id": 27,
"name": "La Primita Product",
"lottery": {
"id": 1,
"name": "La Primitiva",
"jackpotAmount": 10000,
}
},
{
"id": 28,
"name": "La Primita Product",
"lottery": {
"id": 1,
"name": "La Primitiva",
"jackpotAmount": 10000,
}
How can i sort by lottery.jackpotAmount?
Upvotes: 11
Views: 6016
Reputation: 77482
To _.sortBy
you can pass callback as a second argument, like this
var array = [{
"id": 27,
"name": "La Primita Product",
"lottery": {
"id": 1,
"name": "La Primitiva",
"jackpotAmount": 10000,
}
}, {
"id": 28,
"name": "La Primita Product",
"lottery": {
"id": 1,
"name": "La Primitiva",
"jackpotAmount": 10,
}
}];
array = _.sortBy(array, function (el) {
return el.lottery.jackpotAmount;
});
console.log(array);
<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/2.4.1/lodash.min.js"></script>
Upvotes: 19