| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Array/findLastIndex | [Back] [Original] |
Get to know MDN better
Cette page a t traduite partir de l'anglais par la communaut. Vous pouvez contribuer en rejoignant la communaut francophone sur MDN Web Docs.
Cette fonctionnalit est bien tablie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis aot 2022.
La mthode findLastIndex() des instances de Array parcourt le tableau dans l'ordre inverse et retourne l'indice du premier lment qui satisfait la fonction de test fournie.
Si aucun lment ne satisfait la fonction de test, -1 est retourn.
Voir aussi la mthode findLast(), qui retourne la valeur du dernier lment qui satisfait la fonction de test (plutt que son indice).
const array = [5, 12, 50, 130, 44];
const isLargeNumber = (element) => element > 45;
console.log(array.findLastIndex(isLargeNumber));
// Rsultat attendu: 3
// Indice de l'lment dont la valeur est: 130
findLastIndex(callbackFn)
findLastIndex(callbackFn, thisArg)
callbackFnUne fonction excuter pour chaque lment du tableau. Elle doit retourner un quivalent vrai pour indiquer qu'un lment correspondant a t trouv, et un quivalent faux sinon. La fonction est appele avec les arguments suivants :
thisArg FacultatifUne valeur utiliser comme this lors de l'excution de callbackFn. Voir mthodes itratives.
Retourne l'indice du dernier lment (ayant l'indice le plus lev) du tableau qui satisfait le test fourni. Sinon, retourne -1 si aucun lment correspondant n'est trouv.
La mthode findLastIndex() est une mthode itrative. Elle appelle la fonction fournie callbackFn une fois pour chaque lment du tableau, dans l'ordre dcroissant des indices, jusqu' ce que callbackFn retourne un quivalent vrai. findLastIndex() retourne alors l'indice de cet lment et cesse d'itrer sur le tableau. Si callbackFn ne retourne jamais un quivalent vrai, findLastIndex() retourne -1. Consultez la section mthodes itratives pour plus d'informations sur le fonctionnement gnral de ces mthodes.
callbackFn est invoque pour chaque indice du tableau, pas seulement pour ceux qui ont une valeur assigne. Les emplacements vides dans les tableaux creux se comportent comme undefined.
La mthode findLastIndex() est gnrique. Elle attend seulement que la valeur this possde une proprit length et des proprits indexes par des cls entires.
Dans l'exemple qui suit, on trouve l'indice du dernier lment du tableau qui est un nombre premier (ou on renvoie -1 si le tableau ne contient pas de nombre premier) :
function estPremier(element) {
if (element % 2 === 0 || element < 2) {
return false;
}
for (let diviseur = 3; diviseur <= Math.sqrt(element); diviseur += 2) {
if (element % diviseur === 0) {
return false;
}
}
return true;
}
console.log([4, 6, 8, 12].findLastIndex(estPremier)); // -1, aucun nombre trouv
console.log([4, 5, 7, 8, 9, 11, 12].findLastIndex(estPremier)); // 5
Note :
L'implmentation de estPremier() est fournie titre d'exemple seulement. Pour une application relle, prfrez un algorithme fortement mmos tel que le Crible d'ratosthne afin d'viter des calculs rpts.
callbackFnL'argument array est utile si vous voulez accder un autre lment du tableau, en particulier lorsque vous ne disposez pas d'une variable qui rfrence dj ce tableau. L'exemple suivant utilise d'abord filter() pour extraire les valeurs positives, puis findLastIndex() pour trouver le dernier lment qui est infrieur ses voisins.
const nombres = [3, -1, 1, 4, 1, 5, 9, 2, 6];
const dernierCreux = nombres
.filter((num) => num > 0)
.findLastIndex((num, idx, arr) => {
// Sans l'argument arr, il est impossible d'accder facilement au
// tableau intermdiaire sans le sauvegarder dans une variable.
if (idx > 0 && num >= arr[idx - 1]) return false;
if (idx < arr.length - 1 && num >= arr[idx + 1]) return false;
return true;
});
console.log(dernierCreux); // 6
findLastIndex() sur des tableaux creuxEn cherchant undefined dans un tableau creux, on peut obtenir l'indice d'un emplacement vide.
console.log([1, , 3].findLastIndex((x) => x === undefined)); // 1
findLastIndex() sur des objets qui ne sont pas des tableauxLa mthode findLastIndex() lit la proprit length de this puis parcourt les proprits dont les cls sont des nombres entiers.
const semblableTableau = {
length: 3,
0: 2,
1: 7.3,
2: 4,
3: 3, // ignored by findLastIndex() since length is 3
};
console.log(
Array.prototype.findLastIndex.call(semblableTableau, (x) =>
Number.isInteger(x),
),
); // 2
| Spcification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-array.prototype.findlastindex |
ArrayArray.prototype.find()Array.prototype.findIndex()Array.prototype.findLast()Array.prototype.indexOf()Array.prototype.lastIndexOf()TypedArray.prototype.findLastIndex()Array.prototype.findLastIndex dans core-js (angl.)Array.prototype.findLastIndex (angl.)Cette page a t modifie le 6 nov. 2025 par les contributeurices du MDN.
Arrayat()concat()copyWithin()entries()every()fill()filter()find()findIndex()findLast()findLastIndex()flat()flatMap()forEach()includes()indexOf()join()keys()lastIndexOf()map()pop()push()reduce()reduceRight()reverse()shift()slice()some()sort()splice()toLocaleString()toReversed()toSorted()toSpliced()toString()unshift()values()with()[Symbol.iterator]()Object/FunctionObject.prototype.__defineGetter__()Object.prototype.__defineSetter__()Object.prototype.__lookupGetter__()Object.prototype.__lookupSetter__()Object.prototype.hasOwnProperty()Object.prototype.isPrototypeOf()Object.prototype.propertyIsEnumerable()Object.prototype.toLocaleString()Object.prototype.toString()Object.prototype.valueOf()Certaines parties de ce contenu sont protges par le droit d'auteur 19982026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.
| Web Proxy Viewer | New URL | Original Page |