Heim > Web-Frontend > js-Tutorial > Einführung in die Verwendung von Set in ES6 (Codebeispiel)

Einführung in die Verwendung von Set in ES6 (Codebeispiel)

不言
Freigeben: 2018-11-14 16:13:02
nach vorne
2374 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine Einführung in die Verwendung von Set in ES6 (Codebeispiele). Ich hoffe, dass er für Freunde hilfreich ist.

Übersicht

Set ist eine neue Datenstruktur, die ähnliche Funktionen wie andere Sprachen aufweist. Als Set in js verfügt es natürlich immer noch über einige Funktionen, die zu js gehören.

Initialisierung

new Set([iterable]);
Nach dem Login kopieren

Das Initialisieren eines Satzes hat einen optionalen Parameter. Dieser Parameter muss ein iterierbares Objekt sein, einschließlich String, Array, Array-ähnliches Objekt (Argumente, NodeList), typisiertes Array. Festlegen, Zuordnen und benutzerdefinierte iterierbare Objekte

String

new Set('1234') // Set(4) {"1", "2", "3", "4"}
Nach dem Login kopieren

Array

new Set([1,2,3,4]) // Set(4) {1, 2, 3, 4}
Nach dem Login kopieren

Argumente

function sum(){
  return new Set(arguments)
}
sum(1,2,3,4)  // Set(4) {1, 2, 3, 4}
Nach dem Login kopieren

Set

new Set(new Set([1,2,3,4])) // Set(4) {1, 2, 3, 4}
Nach dem Login kopieren

Werte hinzufügen

Nachdem Sie einen Satz initialisiert haben, können Sie ihm weiterhin Werte hinzufügen

let set=new Set()
set.add(1)
set.add(1)
set.add(1)
console.log(set) // Set(1) {1}
Nach dem Login kopieren

Mit dieser Funktion können Sie viele Dinge tun, z. B. doppelte Werte filtern

new Set([1,1,2,3]) // Set(3){1,2,3}
Nach dem Login kopieren

Aber Hinweis dass zwei identische Objektliterale unterschiedliche Objekte mit unterschiedlichen Referenzen sind, sodass Set zwei Objekte mit unterschiedlichen Referenzen nicht als gleich markieren kann, selbst wenn sie gleich zu sein scheinen

let a={num:1}
let b={num:1}
console.log(a===b) //false
new Set(a, b)// Set(2){{num:1},{num:2}}
let c=a
console.log(c===a)//true
new Set(a,c)// Set(1){{num:1}}
Nach dem Login kopieren

Bestimmen Sie, ob es

let set=new Set([1,2,3])
set.has(1) // true
set.has(4) //false
Nach dem Login kopieren
enthält

Menge abrufen

let set=new Set([1,2,3])
set.size //3
Nach dem Login kopieren

Löschen

let set=new Set([1,2,3])
set.delete(1)// true
set.delete(1)// false
Nach dem Login kopieren

Löschen

let set=new Set([1,2,3])
set.clear()
console.log(set) // Set(0){}
Nach dem Login kopieren

Traverse

let set=new Set([1,2,3])
set.forEach((s)=>{console.log(s)})
// 1
// 2
// 3
Nach dem Login kopieren

Iterator abrufen

let set=new Set([1,2,3])
let entries=set.entries()
console.log(entries.next().value) // [1,1]
console.log(entries.next().value) // [2,2]
console.log(entries.next().value) // [3,3]
console.log(entries.next().value) // undefined

for(let item of set){
    console.log(item)
}
// 1
// 2
// 3
Nach dem Login kopieren

Schlüsseliterator abrufen

let set=new Set([1,2,3])
let keys=set.keys()
console.log(keys.next().value) // 1
console.log(keys.next().value) // 2
console.log(keys.next().value) // 3
console.log(keys.next().value) // undefined

for(let {key} of set){
    console.log(key)
}
// 1
// 2
// 3
Nach dem Login kopieren

Wert-Iterator abrufen

let set=new Set([1,2,3])
let values=set.values()
console.log(values.next().value) // 1
console.log(values.next().value) // 2
console.log(values.next().value) // 3
console.log(values.next().value) // undefined

for(let {value} of set){
    console.log(value)
}
// 1
// 2
// 3
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung von Set in ES6 (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
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