<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>普通数组的操作方法和属性</title>
</head>
<body>
<script>
const inventory = [
{ name: 'apples', quantity: 2 },
{ name: 'bananas', quantity: 22 },
{ name: 'cherries', quantity: 222 },
];
/*
.find()
find()函数用来查找目标元素,找到就返回该元素(下面如果还有内容将不会再执行),
找不到返回undefined。
*/
//正常写法
const bananas = inventory.find(fruit => {
console.log(fruit)//{name: "apples", quantity: 2}{name: "bananas", quantity: 22}
if (fruit.name == 'bananas') {
return true
}
return false
})
console.log(bananas)//{name: "bananas", quantity: 22}
//缩写
const bananas2 = inventory.find(fruit => fruit.name === 'bananas')
console.log(bananas2)//{name: "bananas", quantity: 22}
const bananas1 = inventory.find(fruit => {
if (fruit.name == 'watermelon') {//注意:watermelon在inventory数组里面是不存在的
return true
}
return false
})
console.log(bananas1)//undefined
/*
.findIndex()
findIndex()函数也是查找目标元素,找到就返回元素的位置,找不到就返回-1。
*/
//inventory数组对象中存在bananas
const bananasIndex = inventory.findIndex(fruit => fruit.name === 'bananas')
console.log(bananasIndex)//1
// //inventory数组对象中不存在bananas
const bananasIndex1 = inventory.findIndex(fruit => fruit.name === 'noBananas')
console.log(bananasIndex1)//-1
/*
.some()
some() 方法测试是否至少有一个元素可以通过被提供的函数方法。
该方法返回一个Boolean类型的值。
*/
const isEnough=inventory.some(fruit=>{
return fruit.quantity>200
})
console.log(`isEnough:${isEnough}`)//true
//注意some()会从你提供的数据中,从上到下依次执行,
//最先找到符合的数据然后下面的数据将不会再执行。
const isEnough1=inventory.some(fruit=>{
console.log(fruit.quantity)//2 22
return fruit.quantity>20
})
console.log(`isEnough:${isEnough1}`)//true
/*
.every()
every() 方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。
它返回一个布尔值。
*/
const isAllEnough=inventory.every(fruit=>{
return fruit.quantity>200
})
console.log(`isAllEnough:${isAllEnough}`)//false
//注意every()会从你提供的数据中,从上到下依次执行,
//最先找到符合的数据然后下面的数据将不会再执行。
const isAllEnough1=inventory.every(fruit=>{
console.log(fruit.quantity)//2
return fruit.quantity>200
})
console.log(`isAllEnough1:${isAllEnough1}`)//false
</script>
</body>
</html>
(ArrayBuffer)普通数组的操作方法和属性(find()、indexfind()、some()、every())
猜你喜欢
转载自blog.csdn.net/JEFF_luyiduan/article/details/94127252
今日推荐
周排行