ディレクトリ-setとmap(7章)
20592 ワード
set
ES 6には、重複のない順序付きの値である値リストsetタイプが追加されています.
add
let set = new Set();
set.add(5);
set.add("5");
console.log(set.size); //2
console.log(set); // Set(2) { 5, '5' }
setにはオブジェクトも含めることができます.let set = new Set(),
key1 = {},
key2 = {};
set.add(key1);
set.add(key2);
console.log(set); // Set(2) { {}, {} }
console.log(set.size); // 2
重複除外let set = new Set([1,2,3,4,5,5,5,5]);
console.log(set); // Set(5) { 1, 2, 3, 4, 5 }
console.log(set.size); // 5
hash
let set = new Set();
set.add(5);
set.add("5");
console.log(set.has(5)); // true
console.log(set.has(6)); // false
要素の除去
let set = new Set();
set.add(5);
set.add("5");
console.log(set.has(5)); // true
set.delete(5);
console.log(set.has(5)) // false
console.log(set); // Set(1) { '5' }
set.clear();
console.log(set.has("5")); // false
console.log(set); // Set(0) {}
foreach
const arr = [2,4,2,3,6,7]
const new_arr = []
arr.forEach((n)=>{if(n%2===0) new_arr.push(n)});
console.log(new_arr); //[ 2, 4, 2, 6 ]
const arr = [2,4,2,3,6,7]
const new_arr = []
arr.forEach((n)=>{new_arr.push(n*2)});
console.log(new_arr); //[ 4, 8, 4, 6, 12, 14 ]
map()
パラメータ値:currentValue、index、array
要素の一括変更const arr = ["test" , "really test" , "good test"];
const arr2 = arr.map((v)=>v.length);
console.log(arr2); // [4 ,11 ,9]
filter()
要素フィルタを配列true/falseに戻し、ない場合は空の配列を返します.const arr = [4 , 2 ,3 ,5 ,67, 1,9 ,5 ,10];
const arr2 = arr.filter((v)=>(v%3===0));
console.log(arr2); // [ 3, 9 ]
setをアレイに変換
Map
let set = new Set();
set.add(5);
set.add("5");
console.log(set.size); //2
console.log(set); // Set(2) { 5, '5' }
let set = new Set(),
key1 = {},
key2 = {};
set.add(key1);
set.add(key2);
console.log(set); // Set(2) { {}, {} }
console.log(set.size); // 2
let set = new Set([1,2,3,4,5,5,5,5]);
console.log(set); // Set(5) { 1, 2, 3, 4, 5 }
console.log(set.size); // 5
let set = new Set();
set.add(5);
set.add("5");
console.log(set.has(5)); // true
console.log(set.has(6)); // false
let set = new Set();
set.add(5);
set.add("5");
console.log(set.has(5)); // true
set.delete(5);
console.log(set.has(5)) // false
console.log(set); // Set(1) { '5' }
set.clear();
console.log(set.has("5")); // false
console.log(set); // Set(0) {}
const arr = [2,4,2,3,6,7]
const new_arr = []
arr.forEach((n)=>{if(n%2===0) new_arr.push(n)});
console.log(new_arr); //[ 2, 4, 2, 6 ]
const arr = [2,4,2,3,6,7]
const new_arr = []
arr.forEach((n)=>{new_arr.push(n*2)});
console.log(new_arr); //[ 4, 8, 4, 6, 12, 14 ]
const arr = ["test" , "really test" , "good test"];
const arr2 = arr.map((v)=>v.length);
console.log(arr2); // [4 ,11 ,9]
const arr = [4 , 2 ,3 ,5 ,67, 1,9 ,5 ,10];
const arr2 = arr.filter((v)=>(v%3===0));
console.log(arr2); // [ 3, 9 ]
const map = new Map();
map.set("title","Understanding ECMAScript 6");
map.set("year",2016);
console.log(map); // Map(2) { 'title' => 'Understanding ECMAScript 6', 'year' => 2016 }
console.log(map.get("title")); // Understanding ECMAScript 6
console.log(map.get("year")); // 2016
mapを作成すると、オブジェクトプロファイルを鍵として使用できません.Mapはまた、鍵としてオブジェクトを使用することもできる.
キー
オブジェクトキー1とキー2をMapのキーとして使用します.
これらのキーは他の形式に変換されないため、各オブジェクトは一意とみなされます.
mapでの方法
初期化map
mapでのforEachメソッド
mapのforEach()法はSetまたは配列に類似しており,3つのパラメータを持つコールバック関数を受け入れる.
Reference
この問題について(ディレクトリ-setとmap(7章)), 我々は、より多くの情報をここで見つけました https://velog.io/@ash3767/자바스크립트-스터디-set-과-map-7장テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol