Array.find()的使用场景
将数组中满足需求的第一个数组元素返回,若没有满足条件的数据将返回undefined。
在实际中可以通过id或者code与后台接口返回的数据(id或者code)进行判断,当满足需求时,就可以将对应的name或者其他数据进行显示。
1.Array.find()语法
Array.find(function(item, index, Arr),this)
序号 | 参数 | 是否必传 | 描述 |
---|---|---|---|
1 | function(item,index,Arr) | 是 | 数组中每个元素必须执行的函数,该函数有三个参数 |
2 | item | 是 | 函数正在处理的元素(数组中的元素) |
3 | index | 否 | 函数正在处理元素的索引值 |
4 | Arr | 否 | 当前函数正在处理元素的数组对象 |
5 | this | 否 | 传递给函数的值一般用 “this” 值(还不太理解后续补充) |
2. Array.find()方法实例
2.1 满足条件时
let arr = [
{value:1,name:'name1',age:18},
{value:2,name:'name2',age:20},
{value:3,name:'name3',age:30},
{value:null,name:'',age:''}
]
let result = arr.find(function(item,index,Arr){
return item.value == 1
},this)
console.log(result)
console.log(result.name)
2.2 不满足条件时
let arr = [
{value:1,name:'name1',age:18},
{value:2,name:'name2',age:20},
{value:3,name:'name3',age:30},
{value:null,name:'',age:''}
]
let result = arr.find(function(item,index,Arr){
return item.value == 4
},this)
console.log(result)
2.3 空数组的情况
let arr = []
let result = arr.find(function(item,index,Arr){
return 0
})
console.log(result)
3.Array.find()注意事项
序号 | 注意事项 |
---|---|
1 | Array.find()方法返回的只能是通过测试函数的第一个数组元素的值。不是索引或者其他的 |
2 | Array.find()只能对非空数组进行执行。空数组,函数不会执行(直接跳出函数,不会进入函数体) |
3 | 当没有符合条件的元素,则返回undefined |