js比较函数
Posted IT-HourseMan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js比较函数相关的知识,希望对你有一定的参考价值。
//1.
//bySort函数接受一个首要比较字符串和一个可选的次要比较函数做为参数
//并返回一个可以用来包含该成员的对象数组进行排序的比较函数
//当o[firstName] 和 p[firstName] 相等时,次要比较函数被用来比较
var bySort = function(compareName,minor){
return function(o,p){
var a,b;
if(o && p && typeof o === ‘object‘ && typeof p ===‘object‘){
//如果是empty,用""表示
if(o.hasOwnProperty(compareName)){
a = o[compareName];
}
else{
a = "";
}
if(p.hasOwnProperty(compareName)){
b = p[compareName];
}
else{
b = "";
}
if(a === b){
return typeof minor === ‘function‘ ? minor(o,p):0;
}
if(typeof a === typeof b){
return a < b ? -1:1;
}
return typeof a < typeof b ? -1 : 1;
}
}
}
function sortExtensionsByName(extensions){
extensions.sort(bySort(‘firstName‘,bySort(‘lastName‘),bySort(‘ext‘)));
}
以上是关于js比较函数的主要内容,如果未能解决你的问题,请参考以下文章
JS 函数 - 比较 2 个对象数组(每个数组中都有数组对象)