JS学习(一)

百度前端技术学院上有这么一个小练习,作为一个菜鸟,写完之后,对filter和sort有了更深刻的认识。

任务是这样描述的:参考以下示例代码,页面加载后,将提供的空气质量数据数组,按照某种逻辑(比如空气质量大于60)进行过滤筛选,最后将符合条件的数据按照一定的格式要求显示在网页上。

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>IFE JavaScript Task 01</title>
  </head>
<body>

  <h3>污染城市列表</h3>
  <ul id="aqi-list">
<!--   
    <li>第一名:福州(样例),10</li>
    <li>第二名:福州(样例),10</li> -->
  </ul>

<script type="text/javascript">

var aqiData = [
  ["北京", 90],
  ["上海", 50],
  ["福州", 10],
  ["广州", 50],
  ["成都", 90],
  ["西安", 100]
];

(function () {

  /*
  在注释下方编写代码
  遍历读取aqiData中各个城市的数据
  将空气质量指数大于60的城市显示到aqi-list的列表中
  */

})();

</script>
</body>
</html>

我们其实要实现的就是function函数。在这道题中我使用了filter,开始用if判断,后来想起filter,就直接使用了。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>IFE JavaScript Task 01</title>
</head>
<body>
<h3>污染城市列表</h3>
<ul id="aqi-list">
</ul>
<script type="text/javascript">
    var aqiData = [
        ["北京", 90],
        ["上海", 50],
        ["福州", 10],
        ["广州", 50],
        ["成都", 90],
        ["西安", 100]
    ];
    (function () {
        var arr =["一","二","三","四","五","六"];
        var BSixty = aqiData.filter(function (x) {
                return x[1] > 60;
        });
        var BSixty = BSixty.sort(function (x,y) {
            return y[1] - x[1];
        })
        for(var i=0;i<BSixty.length;i++){
            var newNode = document.getElementById('aqi-list');
            var newLi=document.createElement('li');
            newNode.appendChild(newLi);
            newLi.innerHTML = "第"+arr[i]+"名: "+BSixty[i];
        }
    })();
</script>
</body>
</html>

因为aqiData是二维数组,所以BSixty = aqiData.filter(function (x) {return x[1] > 60;})即使用X数组的第二个元素判断,其大于60,就返回。
同样sort是对数组进行排序,我们是要降序输出,所以var BSixty = BSixty.sort(function (x,y) { return y[1] - x[1];})
输出的实现就如下:
1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值