zoukankan      html  css  js  c++  java
  • js将对象数组按照自定义规则排序

    javascript对一个对象数组进行自定义规则排序,对象中有两个字段。

    按照对象中一个字段a的值从小到大规则排序

    效果如下:

    排序前:
    [0]:a=9,b=3
    [1]:a=33,b=7
    [2]:a=1,b=99
    [3]:a=9,b=8
    [4]:a=2,b=6
    [5]:a=2,b=54
    排序后:
    [0]:a=1,b=99
    [1]:a=2,b=6
    [2]:a=2,b=54
    [3]:a=9,b=3
    [4]:a=9,b=8
    [5]:a=33,b=7

    代码如下:

    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    </head>
    
    <body>
    
    <script type="text/javascript">
    
    function sortNumber(a,b){
        return a.a - b.a;
    }
    
    var arr = new Array();
    arr[0] = {a:9,
               b:3};
    arr[1] = {a:33,
               b:7};
    arr[2] = {a:1,
               b:99};
    arr[3] = {a:9,
               b:8};
    arr[4] = {a:2,
               b:6};
    arr[5] = {a:2,
               b:54};
    
    document.writeln('排序前:<br />');
    for(var i=0;i<arr.length;i++){
       //arr[i]=i;
       document.writeln('[' + i + ']:a=' + arr[i].a + ',b=' + arr[i].b + '<br />');
    }
       
    
    //document.write(arr + "<br />")
    document.write("<hr />排序后:<br />");
    //document.write(arr.sort(sortNumber))
    arr.sort(sortNumber);
    console.log(arr);
    for(var i=0;i<arr.length;i++){
       //arr[i]=i;
       document.writeln('[' + i + ']:a=' + arr[i].a + ',b=' + arr[i].b + '<br />');
    }
    </script>
    
    </body>
    </html>
    化繁为简
  • 相关阅读:
    Linux学习-汇总
    前端学习-汇总
    人生苦短,我用python
    python_面试题_DB相关问题
    企业应用学习-git学习
    python基础-并发编程之I/O模型基础
    python_面试题_HTTP基础相关问题
    python_面试题_TCP的三次握手与四次挥手问题
    好的RESTful API的设计原则
    CSP-S2021 游记
  • 原文地址:https://www.cnblogs.com/chensihan/p/7119520.html
Copyright © 2011-2022 走看看