zoukankan      html  css  js  c++  java
  • javaScript中自定义sort中的比较函数,用于比较字符串长度,数值大小

     
    var arr = ['aa', 23, 1.2, 'bb', 'cc'];
    var len = arr.length;
    // for (var i = 0; i < len; i++) {
    // alert(arr + " 数组的长度是: " + arr.length + "这一次队首的元素是:" + arr.shift());
    // }
    // alert("重排数组后: " + arr.reverse());
    // alert("数组排序后: " + arr.sort());
    var arr = [1, 4, 6, 9, 10, 21];

    //初级版本的比较数值大小
    function compareBig(num1, num2) {
    if (num1 < num2) {
    return -1;
    } else if (num1 == num2) {
    return 0;
    } else {
    return 1;
    }
    }

    //当被比较的两个数,可以被转换为数值时,可以简化gai方法
    function compareBigger(num1, num2) {
    return num1 - num2;
    }

    var strArr = ['a', 'aaaaa', 'aa', '124', '0sjssd'];

    function compareLen(str1, str2) {
    if (str1.length < str2.length) {
    return -1;
    } else if (str1.length < str2.length) {
    return 0;
    } else {
    return 1;
    }
     
     
    //比较数组元素为对象时,我们怎么处理呢?
     
    }
    alert(arr + "排序后的数组是: " + arr.sort(compareBig));
    alert(strArr + "排序后的数组是: " + strArr.sort(compareLen));
     
     
    //函数嵌套,上面两种函数,自己好好体会
    function
    creatCompareFunction(propertyName) { return function(object1, object2) { var value1 = object1[propertyName]; var value2 = object2[propertyName]; if (value1 < value2) { return -1; } else if (value1 > value2) { return 1; } else { return 0; } } } var data = [{ name: 'dd', age: 2 }, { name: 'bb', age: 31 }, { name: 'cc', age: 1 } ]; data.sort(creatCompareFunction('name')); alert(data[0].name);
  • 相关阅读:
    Pyhon数据分析20——matplotlib可视化(二)之柱状图
    程序运行正常,数据库没反应
    Redis在Linux环境下安装的常见错误
    1.1-1.4 sqoop概述及安装cdh版hadoop
    3、css边框以及其他常用样式
    3.15-3.21 hive项目实战
    2、css的存在形式及优先级
    1、css选择器
    3.11-3.14 Hive 企业使用优化2
    3.7-3.10 Hive 企业使用优化1
  • 原文地址:https://www.cnblogs.com/fuck1/p/7259662.html
Copyright © 2011-2022 走看看