JavaScript find()方法及返回数据实例
顾名思义就是查找传入的对应数据
当数组中的元素在测试条件时返回true时,find()返回符合条件的元素,之后的值不会再调用执行函数。
如果没有符合条件的元素返回undefined
//定义一个需要被查找的数组
varmemoList=[{
id:1,name:'1'
},{
id:2,name:'2'
},{
id:3,name:'3'
}]
//用editItem变量将查找出来的数据进行接收
vareditItem=memoList.find((ele)=>{
returnele.id==2
})
//打印editItem得到的结果是{id:2,name:'2'}
这看起来和没什么区别呀。。。
但是~~
//我们修改接收后的值editItem的值
editItem.name='我是修改后的'
//我们再打印一下editItem
console.log(editItem)//{id:2,name:'我是修改后的'}
感觉很正常嘛~
然后我们再打印一下被查找的数据memoList
console.log(memoList)
//[{id:1,name:"1"},{id:2,name:"我是修改后的"},{id:3,name:"3"}]
//看得没memoList内的数据也被修改了
这里就反应出fine()方法返回的结果内存指向依然是memoList所指向的内存地址
所有这里返回的是浅拷贝的数据
注意:find()对于空数组,函数是不会执行的。
注意:find()并没有改变数组的原始值。
浏览器支持
表格中的数字表示支持该方法的第一个浏览器版本号。
| 方法 | |||||
|---|---|---|---|---|---|
| find() | 45.0 | 12.0 | 25.0 | 7.1 | 32.0 |
注意:IE11及更早版本不支持find()方法。
array.find(function(currentValue,index,arr),thisValue)
参数
| 参数 | 描述 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| function(currentValue,index,arr) | 必需。数组每个元素需要执行的函数。
|
||||||||
| thisValue | 可选。传递给函数的值一般用“this”值。 |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。