• 数组筛选和排序


    涉及JavaScript基本语法、事件、DOM相关的知识。

    <h3>污染城市列表</h3>
        <ul id="aqi-list">
        </ul>
    
        <script type="text/javascript">
            var aqiData = [
                ["北京", 90],
                ["上海", 50],
                ["福州", 10],
                ["广州", 50],
                ["成都", 90],
                ["西安", 100],
                ["长沙", 88],
            ];
    
            (function() {
                /*
                在注释下方编写代码
                遍历读取aqiData中各个城市的数据
                将空气质量指数大于60的城市显示到aqi-list的列表中
                */
                //筛选符合条件的数组并构成新的数组newArr
                var newArr = [];
                for (var i = 0, j = aqiData.length; i < j; i++) {
                    if (aqiData[i][1] > 60) { //数组 var aqiData = [ ["北京", 90]]中要取90用:aqiData[i][1]
                        newArr.push([aqiData[i][0], aqiData[i][1]]);
                    }
                }
                // 数组大到小排序
                newArr.sort(function(a, b) {
                    return b[1] - a[1];
                })
                var all = "";
                for (var i = 0, j = newArr.length; i < j; i++) {
                    //名次中文化
                    var rank = i + 1
                    switch (rank) {
                        case 1:
                            rank_number = "";
                            break;
                        case 2:
                            rank_number = "";
                            break;
                        case 3:
                            rank_number = "";
                            break;
                        default:
                            rank_number = "前三以外忽略不计";
                            break;
                    }
                    //添加文本
                    all += "<li>第" + rank_number + "" + ":" + newArr[i][0] + " " + newArr[i][1] + "</li>";
                    var ul = document.getElementById('aqi-list');
                    ul.innerHTML = all;
                }
            })();
        </script>

    关于升序排列和降序排列

    var test = [6, 2, 10];
    test.sort(function(a, b) {
        return a - b;         //实在不懂可以联想负数在前,正数在后,前减后升序、后减前降序
    });
    console.log(test); //[2, 6, 10]

     function(a,b) 比较函数接收两个参数,如果第一个参数应该位于第二个之前则返回一个负数,如果两个参数相等则返回0,如果第一个参数应该位于第二个之后则返回一个正数。

  • 相关阅读:
    celery异步任务
    redis过期策略与内存淘汰机制分析
    爬虫数据去重-布隆过滤器
    scrapy-redis数据去重与分布式框架
    redis哨兵机制
    C#从零单排上王者系列---元组
    玩转VSCode插件之Remote-SSH
    C#从零单排上王者系列---数据类型
    Cassandra之Docker环境实践
    centos7安装nginx并配置前端环境
  • 原文地址:https://www.cnblogs.com/EdisonVan/p/9093861.html
Copyright © 2020-2023  润新知