js sort

sort()方法是按照ASCII码的顺序排序的。

sort()方法还允许带一个函数类型的参数,称之为比较函数,当该比较函数又可以接受两个参数

-1:第一个参数小于第二个参数

0:第一个参数等于第二个参数

1:第一个参数大于第二个参数

/**

*比较函数

*@param{Object}param1要比较的参数1

*@param{Object}param2要比较的参数2

*@return{Number}如果param1>param2返回1

*         如果param1==param2返回0

*         如果param1<param2返回-1

*/

function comparmFunc(param1,param2){

  //如果两个参数均为字符串类型

  if(typeof param1=="string"&&typeof param2=="string"){

    return param1.localeCompare(param2);

  }

  //如果参数1为数字,参数2为字符串

  if(typeof param1=="number"&&typeof param2=="string"){

    return -1;

  }

  //如果参数1为字符串,参数2为数字

  if(typeof param1=="string"&&typeof param2=="number"){

    return 1;

  }

  //如果两个参数均为数字

  if(typeof param1=="number"&&typeof param2=="number"){

    if(param1>param2)return 1;

    if(param1==param2)return 0;

    if(param1<param2)return -1;

  }

}

出自:http://boyadn.blog.163.com/blog/static/742307362010364046141/

原文地址:https://www.cnblogs.com/beng/p/3640584.html