logo

Lodash _.sortBy() Metod

Metoden _.sortBy() i Lodash ordnar objekt från minsta till största eller från A till Ö, beroende på vad de är. Det håller också saker i samma ordning om de är samma, som om du har två av samma siffror eller ord.

Syntax:

_.sortBy(collection, [iteratees]);>

Parametrar:

  • samling: Denna parameter håller samlingen att iterera över.
  • iterater: Denna parameter innehåller värdet att sortera efter och anropas med ett argument(värde).

Returvärde:



Denna metod används för att returnera den nya sorterade arrayen.

Exempel 1: I det här exemplet sorterar vi objektmatrisen med hjälp av _.sortera efter() metod. vi har bara använt 'obj' för att sortera arrayen i stigande ordning.

javascript
// Requiring the lodash library  const _ = require('lodash'); // Original array  let object = [  { 'obj': 'moto', 'price': 19999 },  { 'obj': 'oppo', 'price': 18999 },  { 'obj': 'moto', 'price': 17999 },  { 'obj': 'oppo', 'price': 15999 }]; // Use of _.sortBy() method let sorted_obj = _.sortBy(object,  [function (o) { return o.obj; }]); // Printing the output  console.log(sorted_obj);>

Produktion:



[ { 'obj': 'moto', 'price': 19999 }, { 'obj': 'moto', 'price': 17999 }, { 'obj': 'oppo', 'price': 18999 }, { 'obj': 'oppo', 'price': 15999 } ]>

Exempel 2: I det här exemplet sorterar vi objektmatrisen med metoden _.sortBy() . vi har använt 'obj' och 'pris' för att sortera arrayen i stigande ordning. så om värdet på 'obj' är detsamma, kommer det att leta efter 'pris' i stigande ordning.

javascript
// Requiring the lodash library  const _ = require('lodash'); // Original array  let object = [  { 'obj': 'moto', 'price': 19999 },  { 'obj': 'oppo', 'price': 18999 },  { 'obj': 'moto', 'price': 17999 },  { 'obj': 'oppo', 'price': 15999 }]; // Use of _.sortBy() method let sorted_array = _.sortBy(object, ['obj', 'price']); // Printing the output  console.log(sorted_array);>

Produktion:

[ { 'obj': 'moto', 'price': 17999 }, { 'obj': 'moto', 'price': 19999 }, { 'obj': 'oppo', 'price': 15999 }, { 'obj': 'oppo', 'price': 18999 } ]>