JavaScript-Array-Deduplizierung: Alle eindeutigen Werte abrufen
P粉779565855
2023-08-20 11:36:41
<pre class="brush:php;toolbar:false;"><p>Ich habe ein Array von Zahlen und muss sicherstellen, dass die darin enthaltenen Zahlen eindeutig sind. Ich habe im Internet den folgenden Codeausschnitt gefunden, der einwandfrei funktioniert, bis das Array eine Null enthält. Ich habe auf Stack Overflow ein weiteres, fast identisches Skript gefunden, das jedoch nicht fehlschlägt. </p>
<p>Kann mir jemand beim Lernen helfen, herauszufinden, was mit dem Prototyp-Skript nicht stimmt? </p>
<pre><code>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)};
gib a zurück;
}</code></pre>
<Code>
<h3>Weitere Antworten auf doppelte Fragen: </h3>
<ul>
<li>Doppelte Werte aus dem JS-Array entfernen</li>
</ul>
<h3>Ähnliche Fragen: </h3>
<ul>
<li>Alle nicht eindeutigen Werte im Array abrufen (d. h. Duplikate/mehrfache Vorkommen)</li>
</ul><p><br /></p></code></pre>
ES6/ES2015的更新答案:使用Set和扩展运算符(感谢le-m),单行解决方案如下:
返回结果为:
使用 JavaScript 1.6 / ECMAScript 5,您可以使用数组的原生
filter
方法来获取一个具有唯一值的数组: