Array. prototype. find()
Renvoie le premier élément qui remplit la condition, ou undefined.
- Renvoie
- Le premier élément correspondant, ou
undefined. - Modifie l’original
- Non
Exemple
#const users = [
{ id: 1, name: 'Léa' },
{ id: 2, name: 'Lucas' },
{ id: 3, name: 'Emma' }
]
console.log(users.find((user) => user.id === 2))
console.log(users.find((user) => user.id === 9))Définition et utilisation
#La méthode find() parcourt le tableau depuis le début et renvoie le premier élément pour lequel la fonction de test renvoie une valeur vraie. Si aucun ne correspond, elle renvoie undefined.
La recherche s’arrête à la première correspondance, ce qui la rend plus rapide que filter() sur de grands tableaux, puisque celui-ci vérifie toujours tous les éléments.
Si vous avez besoin de la position plutôt que de l’élément lui-même, utilisez findIndex(). Pour chercher depuis la fin, il y a findLast() et findLastIndex().
Syntaxe
#array.find(callbackFn)
array.find(callbackFn, thisArg)Paramètres
#callbackFn
function (element, index, array)
Fonction de test. La recherche s’arrête dès qu’elle renvoie une valeur vraie.thisArg
optionnel
Valeur dethisà l’intérieur de la fonction.
Plus d’exemples
#const courses = [{ slug: 'html', title: 'HTML et CSS' }]
const course = courses.find((c) => c.slug === 'python')
console.log(course?.title ?? 'Cours introuvable')Compatibilité des navigateurs
#Largement disponible
Fonctionne dans tous les navigateurs modernes, y compris sur mobile. Vous pouvez l’utiliser sans crainte.
- Chrome
- Edge
- Firefox
- Safari
Bonnes pratiques
#- Le résultat de
find()peut êtreundefined. Protégez-vous avec l’opérateur?.avant de lire une propriété. - Pour vérifier seulement l’existence d’un élément,
some()est préférable : elle renvoietrueoufalse.
Entrées associées
#- find() vs filter()find() renvoie le premier élément qui satisfait une condition, ou undefined, tandis que filter() renvoie un nouveau tableau avec tous les éléments qui ont passé le test.
- Array.prototype.findIndex()Renvoie l’indice du premier élément qui remplit la condition, ou -1.
- Array.prototype.findLast()Renvoie le dernier élément qui remplit la condition, en parcourant le tableau depuis la fin.
- Array.prototype.filter()Crée un nouveau tableau avec les éléments pour lesquels la fonction a renvoyé true.
- Array.prototype.some()Vérifie si au moins un élément remplit la condition.
Vous voyez une erreur ou il manque un exemple ? Écrivez-nous.