JavaScript -- 数组循环

for循环总结:

for–i
let arr = ['a','b','c'];
// 输出索引和值
for (var i = 0; i < arr.length; i++) {
	console.log(i,arr[i]) // 0,a 1,b 2,c
}
for–of
let arr = ['a','b','c'];
// 输出值
for (const item of arr) {
	console.log(item) //a,b,c
}
// 输出索引
for (const item of arr.keys()) {
	console.log(item) //0,1,2
}
// 输出索引和值
for (const [index,val] of arr.entries()) {
	console.log(`${index}/${val}`) // 0/a, 1/b, 2/c
}
forEach
let arr = ['a','b','c'];
// 输出索引和值
arr.forEach((val,index)=> {
	console.log(`${index}/${val}`) // 0/a, 1/b, 2/c
})
filter
// 输出索引和值 、 return条件数组
let arr = ['a','b','c'];
let Arr = arr.filter((val,index)=>{
	console.log(`${index}/${val}`) // 0/a, 1/b, 2/c
	return val=='a'
});
console.log(Arr) // ['a']
map
// 输出索引和值 、 return条件属性数组
let arr = [
	{name:'小明',id:1},
	{name:'小华',id:2},
	{name:'小黄',id:3},
]
// 例1:
let mapArr = arr.map( (val,index) =>{
	console.log(`${index}/${val}`) // 0/{name:'小明',id:1}, 1/{name:'小华',id:2}, 2/{name:'小黄',id:3}
	return val.name;
})
console.log(mapArr) // ['小明','小华','小黄']
// 例2:
let mapArr2 = arr.map( (val,index) =>{
	return val.name=='小明';
})
console.log(mapArr2) // [true, false, false]
new Set(去重)
let arr = [
	{name:'小明',id:1},
	{name:'小华',id:2},
	{name:'小明',id:1},
]
let arr4 = [...new Set(arr.map(i=>{return i.name}))] // ['小明','小华']
every
// 数组全部符合、返回true
var arr = [1,56,80,5];
var main = arr.every(n => n > 0);
console.log(main)   //输出:true
some
// 数组只要有一个符合、就返回true
var arr = [1,-56,80,-5];
var main = arr.some(n => n > 0);
console.log(main)    //输出:true
reducer
// 计算
var arr = [10,20,30,40]
let result = arr.reduce(function(prev,next,index,arr){
	return prev + next;
})
console.log(result);  //输出:100
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值