Array.some() 是否存在满足条件的元素

最后更新:2026-09-09

Array.some() 是否存在满足条件的元素

some 检查数组中是否至少有一个元素让回调返回真值,返回布尔值;找到即停止遍历。全部满足用 every。

分类数组
ES 版本ES5(2009)

📝 语法

const 有匹配 = 数组.some((元素, 下标, 原数组) => 条件);

⚙️ 参数

callback测试函数:任一元素返回真值即整体返回 true 并停止。

返回值:布尔值。

是否修改原值:否(返回新值)

▶ 示例

编辑下方代码,点击运行,在输出面板查看结果:

运行结果:

true
true
💡 提示 some 找到一个就停止——比 filter(...).length > 0 高效,语义也更清晰。
ℹ️ info 空数组调用 some 总是返回 false(没有任何元素满足);every 空数组总是 true——两者互补的数学性质。

🌐 浏览器支持

浏览器 ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
Array.some() v1 v12 v1.5 v3 v10.5
所有现代浏览器均支持
更多实战案例即将上线,敬请期待。

📚 相关教程

❓ 常见问题

Qsome 和 every 的区别?
Asome 是有一个满足就 true;every 是全部满足才 true。两者都是短路求值。
Qsome 能用来判断数组包含某对象吗?
A能:users.some(u => u.id === 3)——按属性判断存在性,比 includes 的引用比较实用得多。
Qsome 的回调必须有返回值吗?
A是——不返回(或返回 undefined)视为 false。漏写 return 会让 some 永远返回 false。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏