Eindeutige Werte aus einem JavaScript-Array abrufen
In dieser Frage zielen wir darauf ab, doppelte Werte aus einem JavaScript-Array zu entfernen und gleichzeitig die Integrität sicherzustellen Null Elemente. Sehen wir uns ein Snippet an, bei dem beim Umgang mit Nullen ein Problem auftritt:
Array.prototype.getUnique = function() { var o = {}, a = [], i, e; for (i = 0; e = this[i]; i++) { o[e] = 1 }; for (e in o) { a.push(e); }; return a; };
Dieses Snippet nutzt den inhärenten Zwang von JavaScript, bei dem Werte implizit in wahre oder falsche Werte umgewandelt werden. Null ist in JavaScript ein falscher Wert, und da Objekte in JavaScript standardmäßig wahr sind, wird er während der ersten Schleife zum Objekt hinzugefügt. Folglich wird es dann während der nachfolgenden Schleife in das resultierende Array verschoben.
Im modernen JavaScript (ES5 und höher) haben wir jedoch Zugriff auf effizientere und zuverlässigere Methoden, um Eindeutigkeit in Arrays zu erreichen:
Native Filtermethode:
Die Filtermethode ermöglicht es uns, über die Elemente eines Arrays zu iterieren und ein neues Array zurückzugeben, das nur die Elemente enthält, die darin enthalten sind eine bestimmte Testfunktion bestehen. Wir können eine Funktion definieren, die prüft, ob ein Element innerhalb des Arrays eindeutig ist, indem sie seinen Index mit dem ersten Vorkommen desselben Elements vergleicht:
function onlyUnique(value, index, array) { return array.indexOf(value) === index; } // Example usage: const a = ['a', 1, 'a', 2, '1']; const unique = a.filter(onlyUnique); console.log(unique); // Logs: ['a', 1, 2, '1']
Das obige ist der detaillierte Inhalt vonWie kann ich eindeutige Werte, einschließlich Nullen, effizient aus einem JavaScript-Array abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!