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(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。