数组常用的循环方式

循环方法说明
forEach不可终止循环
some返回true终止循环,不会对空数组进行检测
findIndex返回true可以终止循环,返回满足条件的索引
filter返回过滤后的数组
every返回一个Boolean类型的值,该值取决了数组中是否所有的元素满足给定的条件
  • forEach
var list = [
	{
		id:1,
		userName:'王小小',
		age:24,
	},
	{
		id:2,
		userName:'李四',
		age:14,
	},
	{
		id:3,
		userName:'张三',
		age:33,
	}
]

list.forEach((item,i)=>{
	console.log('id:'+item.id+';'+'姓名:'+item.userName+';'+'年龄:'+item.age)
})

打印结果

id:1;姓名:王小小;年龄:24
id:2;姓名:李四;年龄:14
id:3;姓名:张三;年龄:33
  • some
    some()方法会返回一个Boolean类型的值,该值取决了数组中是否有元素满足给定的条件
    some()为数组中的每一个元素执行一次回调函数,直到找到一个使得回调函数返回一个“真值”(即可转换为布尔值 true 的值),如果找到了这样一个值,some() 将会立即返回 true;否则,some() 返回 false
var list = [
	{
		id:1,
		userName:'王小小',
		age:24,
	},
	{
		id:2,
		userName:'李四',
		age:14,
	},
	{
		id:3,
		userName:'张三',
		age:33,
	}
]

list.some((item,i)=>{
	if(item.id ===2) {
		console.log('id:'+item.id+';'+'姓名:'+item.userName+';'+'年龄:'+item.age)
		//返回true 终止循环
		return true
	}
})

打印结果

id:2;姓名:李四;年龄:14
true
  • findIndex
var list = [
	{
		id:1,
		userName:'王小小',
		age:24,
	},
	{
		id:2,
		userName:'李四',
		age:14,
	},
	{
		id:3,
		userName:'张三',
		age:33,
	}
]

var index=list.findIndex(item=>{
	if(item.id ===2) {
		return true
	}
})
console.log(index)

打印结果

1
  • filter
    filter()方法会返回一个新数组,该新数组的元素是符合回调函数中筛选条件的结果
var list = [
   {
   	id:1,
   	userName:'王小小',
   	age:24,
   },
   {
   	id:2,
   	userName:'李四',
   	age:14,
   },
   {
   	id:3,
   	userName:'张三',
   	age:33,
   }
]

var arr=list.filter(item=>{
   return item.age>18
})
console.log(arr)

打印结果

[{id:1,userName:'王小小',age:24,},{id:3,userName:'张三',age:33,}]
  • every
    如果数组中检测到有一个元素不满足,则整个表达式返回false,且剩余的元素不会再进行检测。如果所有元素都满足条件,则返回true;
var list = [
	{
		id:1,
		userName:'王小小',
		age:24,
	},
	{
		id:2,
		userName:'李四',
		age:14,
	},
	{
		id:3,
		userName:'张三',
		age:33,
	}
]

let result=list.every(function(item){
	return item.age>18;
})
console.log(result)

打印结果

false
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值