Skip to main content
Module

x/ramda/source/sort.js

:ram: Practical functional Javascript
Latest
File
import _curry2 from './internal/_curry2.js';

/** * Returns a copy of the list, sorted according to the comparator function, * which should accept two values at a time and return a negative number if the * first value is smaller, a positive number if it's larger, and zero if they * are equal. Please note that this is a **copy** of the list. It does not * modify the original. * * @func * @memberOf R * @since v0.1.0 * @category List * @sig ((a, a) -> Number) -> [a] -> [a] * @param {Function} comparator A sorting function :: a -> b -> Int * @param {Array} list The list to sort * @return {Array} a new array with its elements sorted by the comparator function. * @see R.ascend, R.descend * @example * * const diff = function(a, b) { return a - b; }; * R.sort(diff, [4,2,7,5]); //=> [2, 4, 5, 7] */var sort = _curry2(function sort(comparator, list) { return Array.prototype.slice.call(list, 0).sort(comparator);});export default sort;