ホームページ > ウェブフロントエンド > jsチュートリアル > ES6 での Set の使用方法の紹介 (コード例)

ES6 での Set の使用方法の紹介 (コード例)

不言
リリース: 2018-11-14 16:13:02
転載
2373 人が閲覧しました

この記事では、ES6 での Set の使用法 (コード例) を紹介します。必要な方は参考にしていただければ幸いです。

概要

Set は、他の言語と同様の特性を備えた新しいデータ構造です。もちろん、js の Set として、js の特性もいくつか持っています。

Initialization

new Set([iterable]);
ログイン後にコピー

Set の初期化にはオプションのパラメーターがあります。このパラメーターは、String、Array、Array-Like obejct(Arguments, NodeList)、Typed Array などの反復可能なオブジェクトである必要があります。設定、マップ、およびユーザー定義の反復可能オブジェクト

String

new Set('1234') // Set(4) {"1", "2", "3", "4"}
ログイン後にコピー

Array

new Set([1,2,3,4]) // Set(4) {1, 2, 3, 4}
ログイン後にコピー

arguments

function sum(){
  return new Set(arguments)
}
sum(1,2,3,4)  // Set(4) {1, 2, 3, 4}
ログイン後にコピー

Set

new Set(new Set([1,2,3,4])) // Set(4) {1, 2, 3, 4}
ログイン後にコピー

Add value

セットを初期化した後、値を追加し続けることができます

let set=new Set()
set.add(1)
set.add(1)
set.add(1)
console.log(set) // Set(1) {1}
ログイン後にコピー

この機能を利用すると、重複する値のフィルタリングなど、さまざまなことができます

new Set([1,1,2,3]) // Set(3){1,2,3}
ログイン後にコピー

しかし2 つの同一のオブジェクト リテラルは、参照が異なる別のオブジェクトであるため、Set は、たとえ同じように見えても、参照が異なる 2 つのオブジェクトを同じとしてマークすることはできないことに注意してください

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}}
ログイン後にコピー

let set=new Set([1,2,3])
set.has(1) // true
set.has(4) //false
ログイン後にコピー

数量の取得

let set=new Set([1,2,3])
set.size //3
ログイン後にコピー

削除

let set=new Set([1,2,3])
set.delete(1)// true
set.delete(1)// false
ログイン後にコピー

クリア

let set=new Set([1,2,3])
set.clear()
console.log(set) // Set(0){}
ログイン後にコピー

トラバース

let set=new Set([1,2,3])
set.forEach((s)=>{console.log(s)})
// 1
// 2
// 3
ログイン後にコピー

イテレータの取得

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
ログイン後にコピー

キー取得イテレータ

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
ログイン後にコピー

値取得イテレータ

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
ログイン後にコピー

以上がES6 での Set の使用方法の紹介 (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート