ホームページ  >  記事  >  ウェブフロントエンド  >  es6セットってどういう意味ですか?

es6セットってどういう意味ですか?

青灯夜游
青灯夜游オリジナル
2022-03-09 18:28:122070ブラウズ

set とは「集合」を意味し、ES6 から提供された新しいデータ構造で、配列に似ていますが、メンバーの値は一意であり、重複する値はありません。 Set オブジェクトを使用すると、ユーザーはプリミティブ値でもオブジェクト参照でも、あらゆるタイプの一意の値を保存できます。

es6セットってどういう意味ですか?

このチュートリアルの動作環境: Windows 7 システム、ECMAScript バージョン 6、Dell G3 コンピューター。

セットとは何ですか?

Set (セット) は ES6 が提供する新しいデータ構造で、配列に似ていますが、メンバーの値は一意であり、重複する値はありません。

Set オブジェクトを使用すると、プリミティブ値でもオブジェクト参照でも、あらゆるタイプの一意の値を保存できます。

Set 自体は、Set データ構造を生成するために使用されるコンストラクターです。

Set の特別な値:

Set オブジェクトに格納される値は常に一意であるため、2 つの値が等しいかどうかを判断する必要があります。特別な処理が必要な特別な値がいくつかあります:

  • 0 と -0 は格納および一意性の判断時に同一であるため、繰り返されません。

    #未定義と未定義は同一であるため、重複はありません;
  • NaN と NaN は同一ではありませんが、セットには 1 つだけ格納できるため、重複はありません。
  • #使用シナリオの設定

1. 配列の重複排除に使用##

let arr = [3, 5, 2, 2, 5, 5];
let setArr = new Set(arr)     // 返回set数据结构  Set(3) {3, 5, 2}

//方法一   es6的...解构
let unique1 =  [...setArr ];      //去重转数组后  [3,5,2]

//方法二  Array.from()解析类数组为数组
let unique2 = Array.from(setArr )   //去重转数组后  [3,5,2]
2. 文字列の重複排除に使用
let str = "352255";
let unique = [...new Set(str)].join("");     // 352

3. 交差、和集合、および差分セットの実装

let a = new Set([1, 2, 3]);
let b = new Set([4, 3, 2]);

// 并集
let union = new Set([...a, ...b]);
// Set {1, 2, 3, 4}

// 交集
let intersect = new Set([...a].filter(x => b.has(x)));
// set {2, 3}

// (a 相对于 b 的)差集
let difference = new Set([...a].filter(x => !b.has(x)));
// Set {1}

[関連する推奨事項:

JavaScript ビデオ チュートリアル

Web フロントエンド

]

以上がes6セットってどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。