Baseline Widely available
Die findLast()
Methode von TypedArray
Instanzen iteriert das typisierte Array in umgekehrter Reihenfolge und gibt den Wert des ersten Elements zurück, das die bereitgestellte Testfunktion erfüllt. Wenn keine Elemente die Testfunktion erfüllen, wird undefined
zurückgegeben. Diese Methode hat den gleichen Algorithmus wie Array.prototype.findLast()
.
function isNegative(element /*, index, array */) {
return element < 0;
}
const int8 = new Int8Array([10, 0, -10, 20, -30, 40, 50]);
console.log(int8.find(isNegative));
// Expected output: -30
Syntax
findLast(callbackFn)
findLast(callbackFn, thisArg)
Parameter
callbackFn
Eine Funktion, die für jedes Element im typisierten Array ausgeführt wird. Sie sollte einen truthy Wert zurückgeben, um anzuzeigen, dass ein passendes Element gefunden wurde, und einen falsy Wert andernfalls. Die Funktion wird mit den folgenden Argumenten aufgerufen:
element
Das aktuelle Element, das im typisierten Array verarbeitet wird.
index
Der Index des aktuellen Elements, das im typisierten Array verarbeitet wird.
array
Das typisierte Array, auf dem findLast()
aufgerufen wurde.
thisArg
Optional
Ein Wert, der als this
beim Ausführen von callbackFn
verwendet wird. Siehe iterative Methoden.
Das letzte (höchste Index-) Element im typisierten Array, das die bereitgestellte Testfunktion erfüllt; undefined
falls kein passendes Element gefunden wird.
Siehe Array.prototype.findLast()
für mehr Details. Diese Methode ist nicht generisch und kann nur auf typisierten Array-Instanzen aufgerufen werden.
Das folgende Beispiel gibt das letzte Element im typisierten Array zurück, das eine Primzahl ist, oder undefined
, wenn es keine Primzahl gibt.
function isPrime(n) {
if (n < 2) {
return false;
}
if (n % 2 === 0) {
return n === 2;
}
for (let factor = 3; factor * factor <= n; factor += 2) {
if (n % factor === 0) {
return false;
}
}
return true;
}
let uint8 = new Uint8Array([4, 6, 8, 12]);
console.log(uint8.findLast(isPrime)); // undefined (no primes in array)
uint8 = new Uint8Array([4, 5, 7, 8, 9, 11, 12]);
console.log(uint8.findLast(isPrime)); // 11
Hinweis: Die isPrime()
Implementierung dient nur zur Demonstration. Für eine Anwendung in der realen Welt sollten Sie einen stark memoisierten Algorithmus wie das Sieb des Eratosthenes verwenden, um wiederholte Berechnungen zu vermeiden.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4