You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript数组find方法如何利用回调的array参数获取指定元素

原代码输出1的原因

Array.prototype.find() 的核心逻辑是顺序遍历数组元素,每遍历一个就执行一次回调函数:只要回调返回真值(JS中会被隐式转为true的值),就立刻返回当前遍历的元素,终止遍历。
你的代码里回调直接返回了array参数,也就是原数组[1,2,3,4,5,6],非空数组属于典型的真值,所以第一次遍历第一个元素1的时候回调就命中了真值条件,find直接返回1,最终输出就是1。

基于array参数设置条件输出3的实现

要拿到3,只需要让回调在遍历到元素3的时候返回真值即可。如果要求条件基于array参数设置,只需要从array中取目标值做匹配就行,实现代码如下:

var check = [1,2,3,4,5,6]; 
var check1 = check.find((elements, index, array) => {
  // 从array参数中按索引取目标值和当前元素匹配
  return elements === array[2];
}); 
console.log(check1);

如果要匹配的是值为3的元素(不确定索引的场景),也可以这么写:

var check = [1,2,3,4,5,6]; 
var check1 = check.find((elements, index, array) => {
  // 从array参数中筛选出值为3的元素和当前元素匹配
  return elements === array.find(item => item === 3);
}); 
console.log(check1);

内容的提问来源于stack exchange,提问作者Prakhar Agarwal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 23:45:03