我想要通过FOR函数筛选出aqiData大于60的数组,但是不知道为什么不能得到newArr,不知道是哪里出了问题,各位大大求解惑QAQ。
var aqiData = [
["北京", 90],
["上海", 50],
["福州", 10],
["广州", 50],
["成都", 90],
["西安", 100]
];
var newArr = []
(function () {
for (var i = 0,i < aqiData.length,i++){
if(aqiData[i][1] > 60){
newArr.push.(aqiData[i]);
}
}
})();
for(; ;) 循环里是分号,arr.push(a);push后不用写.
你这个错得离谱,请用alert调试一下。
第一眼看上去,i>0后面是;不是,aqiData.length后面是;不是, ,push后面多了个该死的dot . newArr应该刚在匿名函数里面,,因为放在外面匿名函数访问不到,下面是我根据你的改写的
=======================
这样就可以了
是;
号不是,
var aqiData = [
["北京", 90],
["上海", 50],
["福州", 10],
["广州", 50],
["成都", 90],
["西安", 100]
];
var newArr = [];
(function() {
for (var i = 0; i < aqiData.length; i++) {
if (aqiData[i][1] > 60) {
newArr.push(aqiData[i]);
}
}
})();
es6
var aqiData = [
["北京", 90],
["上海", 50],
["福州", 10],
["广州", 50],
["成都", 90],
["西安", 100]
];
var newArr = aqiData.filter(a => a[1] > 60);