JavaScript find()方法及返回数据实例
程序员文章站
2022-06-13 17:27:51
顾名思义就是 查找传入的对应数据当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。如果没有符合条件的元素返回 undefined// 定义一...
顾名思义就是 查找传入的对应数据
当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
如果没有符合条件的元素返回 undefined
// 定义一个需要被查找的数组 var memolist = [{ id: 1, name: '1' },{ id: 2, name: '2' },{ id: 3, name: '3' }] // 用 edititem 变量将 查找出来的数据进行接收 var edititem = memolist.find((ele) => { return ele.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 |
注意: ie 11 及更早版本不支持 find() 方法。
array.find(function(currentvalue, index, arr),thisvalue)
参数
参数 | 描述 | ||||||||
---|---|---|---|---|---|---|---|---|---|
function(currentvalue, index,arr) | 必需。数组每个元素需要执行的函数。 函数参数:
|
||||||||
thisvalue | 可选。 传递给函数的值一般用 “this” 值。 如果这个参数为空, “undefined” 会传递给 “this” 值 |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读
-
JavaScript解析及序列化JSON的方法实例分析
-
JavaScript find()方法及返回数据实例
-
javascript基本数据类型及类型检测常用方法小结
-
Laravel5.1数据库连接、创建数据库、创建model及创建控制器的方法_php实例
-
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法_php实例
-
javascript动态创建表格及添加数据实例详解_javascript技巧
-
CodeIgniter针对数据库的连接、配置及使用方法_php实例
-
Jquery Ajax学习实例3 向WebService发出请求,调用方法返回数据_jquery
-
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法_php实例
-
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法_php实例