Heim > Web-Frontend > js-Tutorial > Hauptteil

Detaillierte Erläuterung von Beispielen für die Set-Map-Datenstruktur in ES6

零下一度
Freigeben: 2017-06-26 09:12:31
Original
1784 Leute haben es durchsucht

1. Legen Sie die Datenstruktur fest (verwenden Sie „new“, um eine Set-Sammlung zu erstellen, fügen Sie Elemente über die Add-Methode hinzu und ermitteln Sie die Länge der Set-Sammlung über die Größe)  

{
  let list = new Set();
  list.add(5);
  list.add(7);

  console.log('size',list.size);
}
Nach dem Login kopieren

 Es gibt eine andere Möglichkeit zur Initialisierung (durch direkte Übergabe des Arrays)

{
  let arr = [1,2,3,4,5];
  let list = new Set(arr);

  console.log('size',list.size);
}
Nach dem Login kopieren

set innerhalb Elemente können nicht wiederholt werden (Arrays können über diese Funktion von set dedupliziert werden. Hinweis: Die Datentypkonvertierung wird während des Konvertierungsvorgangs nicht durchgeführt)

{
  let list = new Set();
  list.add(1);
  list.add(2);
  list.add(1);//不会报错 只是不会生效

  console.log('list',list);

  let arr=[1,2,3,1,'2'];
  let list2=new Set(arr);

  console.log('unique',list2);
}
Nach dem Login kopieren

set Einige Methoden (hinzufügen, löschen, löschen, hat)

{
  let arr=['add','delete','clear','has'];
  let list=new Set(arr);

  console.log('has',list.has('add'));//是否包含
  console.log('delete',list.delete('add'),list);//清空
  list.clear();
  console.log('list',list);
}
Nach dem Login kopieren

Traversal of set (keys and value return beide gesetzt) ​​

{
  let arr=['add','delete','clear','has'];
  let list=new Set(arr);  for(let key of list.keys()){
    console.log('keys',key);
  }  for(let value of list.values()){
    console.log('value',value);
  }  for(let [key,value] of list.entries()){
    console.log('entries',key,value);
  }

  list.forEach(function(item){console.log(item);})
}
Nach dem Login kopieren

 WeakSet (die darin enthaltenen Elemente können nur Objekte sein und erkennen nicht, ob das hinzugefügte Objekt an anderer Stelle referenziert wird, keine Größenlöschung tut dies Traversal wird nicht unterstützt)

{
  let weakList=new WeakSet();

  let arg={};

  weakList.add(arg);  // weakList.add(2);
  console.log('weakList',weakList);
}
Nach dem Login kopieren

2. Kartendatenstruktur (Karte wird durch Schlüssel/Wert festgelegt, daher wird die Set-Methode zum Abrufen verwendet. Verwenden Sie die Get-Methode )  

{
  let map = new Map();
  let arr=['123'];

  map.set(arr,456);

  console.log('map',map,map.get(arr));
}
Nach dem Login kopieren

 Eine andere Möglichkeit, eine Karte zu definieren (gleichzeitig ist die Methode zum Löschen und Löschen der Größe dieselbe)

{
  let map = new Map([['a',123],['b',456]]);
  console.log('map args',map);
  console.log('size',map.size);
  console.log('delete',map.delete('a'),map);
  console.log('clear',map.clear(),map);
}
Nach dem Login kopieren

 weakMap-Datenstruktur (die gleichen Eigenschaften wie setMap)

{
  let weakmap=new WeakMap();

  let o={};
  weakmap.set(o,123);
  console.log(weakmap.get(o));
}
Nach dem Login kopieren

 

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung von Beispielen für die Set-Map-Datenstruktur in ES6. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!