Heim  >  Artikel  >  Web-Frontend  >  Was sind die gängigen Methoden für Arrays und wie werden Arrays dedupliziert (Code im Anhang)

Was sind die gängigen Methoden für Arrays und wie werden Arrays dedupliziert (Code im Anhang)

yulia
yuliaOriginal
2018-09-12 16:23:441579Durchsuche

Arrays sind ein wichtiger Bestandteil von JavaScript, egal ob es sich um einen Job oder ein Vorstellungsgespräch handelt, Arrays werden beteiligt sein, wie zum Beispiel die klassische Frage: Wie entferne ich Duplikate aus einem Array? Heute werde ich mit Ihnen über die gängigen Array-Methoden sowie über verschiedene Möglichkeiten zur Deduplizierung von Arrays sprechen.

1. Gängige Array-Methoden

slice() wird verwendet, um einen Teil des Zielarrays zu extrahieren und ein neues Array zurückzugeben Originalarray unverändert.

concat() wird zum Zusammenführen mehrerer Arrays verwendet. Es fügt die Mitglieder des neuen Arrays am Ende der Mitglieder des ursprünglichen Arrays hinzu und gibt dann ein neues Array zurück, wobei das ursprüngliche Array unverändert bleibt.

reverse() wird verwendet, um die Array-Elemente umzukehren und das geänderte Array zurückzugeben. Beachten Sie, dass diese Methode das ursprüngliche Array ändert.

sort() Sortiert die Array-Mitglieder. Standardmäßig werden die Array-Mitglieder in Wörterbuchreihenfolge sortiert. Nach dem Sortieren wird das ursprüngliche Array geändert.

push() wird verwendet, um ein oder mehrere Elemente am Ende des Arrays hinzuzufügen und gibt die Länge des Arrays nach dem Hinzufügen der neuen Elemente zurück. Beachten Sie, dass diese Methode das ursprüngliche Array ändert.

pop() wird verwendet, um das letzte Element des Arrays zu entfernen und dieses Element zurückzugeben. Beachten Sie, dass diese Methode das ursprüngliche Array ändert.

unshift() wird verwendet, um ein Element an der ersten Position des Arrays hinzuzufügen und gibt die Länge des Arrays nach dem Hinzufügen des neuen Elements zurück. Beachten Sie, dass diese Methode das ursprüngliche Array ändert.

shift() wird verwendet, um das erste Element des Arrays zu löschen und dieses Element zurückzugeben. Beachten Sie, dass diese Methode das ursprüngliche Array ändert.

splice() wird verwendet, um einige Mitglieder des ursprünglichen Arrays zu löschen und neue Array-Mitglieder an der gelöschten Position hinzuzufügen. Der Rückgabewert ist das gelöschte Element. Beachten Sie, dass diese Methode das ursprüngliche Array ändert.

map() Übergeben Sie nacheinander alle Mitglieder des Arrays an die Parameterfunktion und geben Sie dann die Ergebnisse jeder Ausführung in ein neues Array zurück.

forEach() ist der Map-Methode sehr ähnlich und führt die Parameterfunktion auch nacheinander für alle Mitglieder des Arrays aus. Die forEach-Methode gibt jedoch keinen Wert zurück und wird nur zum Bearbeiten von Daten verwendet.

filter() wird zum Filtern von Array-Mitgliedern verwendet. Die Mitglieder, die die Bedingungen erfüllen, bilden ein neues Array und geben es zurück.

join() verwendet den angegebenen Parameter als Trennzeichen, um alle Array-Mitglieder zu einer Zeichenfolge zu verketten und diese zurückzugeben. Wenn keine Parameter angegeben werden, werden sie standardmäßig durch Kommas ersetzt.

indexOf() Gibt die Position zurück, an der das angegebene Element zum ersten Mal im Array erscheint, oder -1, wenn es nicht erscheint.

lastIndexOf() Gibt die Position des letzten Vorkommens des angegebenen Elements im Array zurück, oder -1, wenn es nicht erscheint.

Mehrere Möglichkeiten, Arrays zu deduplizieren

1. Objekte nach dem Sortieren deduplizieren

function unique(arr) {    var uniqueArr = [],      
 len = arr.length    for (var i = 0; i < len; i++) {      
 if (uniqueArr.indexOf(arr[i]) == -1) {         
 uniqueArr.push(arr[i])       }    
  }    return uniqueArr   }  
  var arr = [1, 2, 3, 1, 5, "1"]  
  var uniqueArr = unique(arr)  console.log(arr)   
   //[1, 2, 3, 1, 5, "1"]   c
   onsole.log(uniqueArr)   //[ 1, 2, 3, 5, &#39;1&#39; ]
>3. for-Schleife + indexOf

function unique(arr) {    
var uniqueArr = [],       
sortArr = arr.concat().sort(),      
 len = sortArr.length,      
  prev    for (var i = 0; i < len; i++) {     
   if (!i || prev !== sortArr[i]) {       
     uniqueArr.push(sortArr[i])       }      
      prev = sortArr[i]     }    return uniqueArr   
      }  var arr = [1, 2, 3, 1, 5, "1"]  
      var uniqueArr = unique(arr)  console.log(arr)    
      //[ 1, 2, 3, 1, 5, &#39;1&#39; ]   console.log(uniqueArr)   //[ 1, &#39;1&#39;, 2, 3, 5 ]

4. es6-Implementierungsmethode

 function unique(arr) {   
  var uniqueArr = [],      
   obj = {},       
   len = arr.length    
   for (var i = 0; i < len; i++) {      
    obj[typeof arr[i] + arr[i]] = arr[i]     }  
      for (var i in obj) {       
      uniqueArr.push(obj[i])     }    
      console.log(obj)   
      //{ number1: 1, number2: 2, number3: 3, number5: 5, string1: &#39;1&#39; }    
       return uniqueArr   }  
       var arr = [1, 2, 3, 1, 5, "1"]  
       var uniqueArr = unique(arr)  console.log(arr)   
        // [1, 2, 3, 1, 5, "1"]   console.log(uniqueArr)   //[ 1, 2, 3, 5, &#39;1&#39; ]

Das obige ist der detaillierte Inhalt vonWas sind die gängigen Methoden für Arrays und wie werden Arrays dedupliziert (Code im Anhang). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn