Array.find() Find the first match
Last updated: 2026-09-09
Array.find() Find the first match
find returns the first element satisfying the test, or undefined. Use some for existence checks and findIndex for positions.
| Category | Arrays |
|---|---|
| ES version | ES6 (2015) |
📝 Syntax
const result = array.find((element, index, array) => condition);
⚙️ Parameters
| callback | Runs per element; a truthy result stops the search and returns that element. |
|---|
Returns:The first matching element, or undefined.
Mutates the original:No (returns a new value)
▶ Example
Edit the code, press Run, and see the result in the output panel:
Output:
{ id: 2, name: 'Li', role: 'admin' }
undefined
💡 Tip find returns a reference to the actual element — mutating it affects the array.
⚠️ Warning The search stops at the first match — far cheaper than filter(...)[0] on large arrays.
🌐 Browser support
| Browser | |||||
|---|---|---|---|---|---|
| Array.find() | ✓ v45 | ✓ v12 | ✓ v25 | ✓ v8 | ✓ v32 |
| Supported by all modern browsers | |||||
🏷️ Related Array Methods
💡 Related Cases
More case studies coming soon — check back later.
📚 Related Tutorials
❓ FAQ
QWhat does find return when nothing matches?
Aundefined. Compare with !== undefined, or use some for a cleaner existence check.
Qfind or findIndex?
AUse find for the element itself, findIndex for the position (e.g. to replace it).
QMulti-condition lookup?
AYes — combine conditions in the callback: users.find(u => u.role === 'admin' && u.active).