Метод _.sortBy() у Lodash упорядковує елементи від найменшого до найбільшого або від А до Я, залежно від того, що вони собою представляють. Він також зберігає речі в тому самому порядку, якщо вони однакові, наприклад, якщо у вас є дві однакові цифри чи слова.
Синтаксис:
_.sortBy(collection, [iteratees]);>
Параметри:
- колекція: Цей параметр утримує колекцію для повторення.
- повторювані: Цей параметр містить значення для сортування та викликається з одним аргументом (значенням).
Повернене значення:
Цей метод використовується для повернення нового відсортованого масиву.
приклад 1: У цьому прикладі ми сортуємо масив об’єктів за допомогою _.сортувати за() метод. ми використовували лише «obj» для сортування масиву в порядку зростання.
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);> Вихід:
[ { 'obj': 'moto', 'price': 19999 }, { 'obj': 'moto', 'price': 17999 }, { 'obj': 'oppo', 'price': 18999 }, { 'obj': 'oppo', 'price': 15999 } ]>приклад 2: У цьому прикладі ми сортуємо масив об’єктів за допомогою методу _.sortBy(). ми використовували «obj» і «price» для сортування масиву в порядку зростання. отже, якщо значення «obj» однакові, тоді він перевірятиме «ціну» у порядку зростання.
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);> Вихід:
[ { 'obj': 'moto', 'price': 17999 }, { 'obj': 'moto', 'price': 19999 }, { 'obj': 'oppo', 'price': 15999 }, { 'obj': 'oppo', 'price': 18999 } ]>