在写一个数组查找元素的代码中使用了Array.find()
方法
但却并没有像想象中那样当遇到符合条件的值返回这个 , 停止执行这个方法而是继续的执行下去了。
在 MDN--Array.prototype.find() 中的示例代码 进行 一个尝试
这里在运行找到了符合条件的值,直接停止了查找,返回它的值。
但是当我这这个 callback
参数中写入一个 if
语句 并 只有一个 return
它就没有停止,而是继续查找
当我 空 return
加上一个 值
它才会有停止查找的效果
Reference MDN
find
方法对数组中的每一项元素执行一次callback
函数,直至有一个 callback 返回true
。当找到了这样一个元素后,该方法会立即返回这个元素的值,否则返回undefined
。注意callback
函数会为数组中的每个索引调用即从0
到length - 1
,而不仅仅是那些被赋值的索引,这意味着对于稀疏数组来说,该方法的效率要低于那些只遍历有值的索引的方法
- 在这个方法中 callback 必须 返回
true
才会 停止查找。 - 这个同适于
Array.findIndex()
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。