📜  Underscore.js _.comparator() 方法

📅  最后修改于: 2022-05-13 01:56:51.683000             🧑  作者: Mango

Underscore.js _.comparator() 方法

_.comparator()方法接受一个类似于二元谓词的函数并返回一个比较器函数,该函数可用作 _.sort() 方法等的回调。

句法:

_.comparator( function );

参数:

  • 函数:一个类似于函数定义的谓词。

返回值:此方法返回一个比较器函数。

注意:这在普通 JavaScript 中不起作用,因为它需要安装 underscore.js contrib 库。

underscore.js contrib 库可以使用npm install underscore-contrib –save 安装。

示例 1:使用比较器函数进行排序。

// Defining underscore contrib variable
var _ = require('underscore-contrib'); 
  
var gfgFun = function(x, y) { 
    // Returns -1, 0 or 1
    return x <= y; 
};
  
// Array 
var arr = [4, 8, 2, 9, 1];
  
var comp = _.comparator(gfgFun);
// Using comparator function with _.sort() method
arr.sort(comp);
  
console.log("Sorted Array :", arr)

输出:

Sorted Array : [ 1, 2, 4, 8, 9 ]

示例 2:使用比较器函数进行反向排序。

// Defining underscore contrib variable
var _ = require('underscore-contrib'); 
  
var gfgFun = function(x, y) { 
    // Returns -1, 0 or 1
    return x >= y; 
};
  
// Array 
var arr = [4, 8, 2, 9, 1];
  
var comp = _.comparator(gfgFun);
// Using comparator function with _.sort() method
arr.sort(comp);
  
console.log("Sorted Array :", arr)

输出:

Sorted Array : [ 9, 8, 4, 2, 1 ]