哪个大神能有办法
var array = [1,2,3,4];
for (var i=0;i<array.length;i++){
if (i%2==0) {
console.log(array[i]);
}
}
var array = [1,2,3,4];
var result = array.filter(function(index, value){
if (index%2==0) {
return true;
}
});
console(array);
console(result);
帮你简单实现了个函数
let arr = [0,1,2,3,4,5,6,7,8,9];
function even(arr){
return arr.filter((val,index)=>{
if(index%2 === 0){
return true;
}
})
};
even(arr);
//输出[0, 2, 4, 6, 8]
直接使用数组的filter方法
arr.filter(function(a){
if(a%2===0){
return true
}
//a是形参,代表arr数组的每一项,判断的filter方法不会影响原数组意思是把数字i个元素进行%2是否全等于0,凡是被2整出的数都是偶数,既然能被整除,那么余就等于0了,那么得出的是偶数,然后return true,相当于只要偶数,
})
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
6 回答1.1k 阅读
3 回答1.3k 阅读✓ 已解决
你的问题
换句话说就是: 获取数组内偶数下标对应的
数组
照上面的句子来看,合理猜测你说的其实是
从二维数组里取得偶下标对应的数组们,并把他们铺平为一个数组
比如
处理之后结果是
['a', 'c']
即偶数下标对应的数组们合并为一个数组
(下标从0
开始0 是偶数
)如果确信是这样 请继续往下看
先获取偶下标对应的数组们
把用 evens 获得的数组们铺平
比如
[[1], [2]]
处理之后变成[1, 2]
这个过程就是铺平
组装
测试
定义待测试数组
期望值是
这里是0号数组当然是偶数
和0,1,2,3,4
以下是测试代码:
ScreenShot
结果如图
预期所得,确信可行。
Links
一些知识点
MDN - 数组的 filter
MDN - 数组的 reduce
MDN - 箭头函数