mapデータ構造

4130 ワード

Map
JavaScriptのデフォルトのオブジェクト表示方式は{}ですが、JavaScriptのオブジェクトには小さな問題があります.キーは文字列でなければなりません.しかし、実際にはNumberや他のデータタイプがキーとして使用されるのも非常に合理的です.
この問題を解決するために、最新のES 6仕様は新しいデータタイプMapを導入しました.
Mapは非常に速い検索速度を持つキーペア構造です.
var map = new Map();
//  
//map.set(name,value);
map.set('name1','   ');
map.set('name2','   ');

//  
//map.get(name);
console.log(map.get(name1)+map.get(name2));

//     map             true;
//map.has(name);
console.log(map.get('name1'))//true;
console.log(map.get('name3'))//false;

//  
//map.delete(name);
console.log(map)//    map  ;//Map(2) {"name1" => "   ", "name2" => "   "}
map.delete('name1');
console.log(map)//    map  ;//{"name2" => "   "}
// map.clear();   


//   map.size();
console.log(map.size) // 2

//    map      for in             
for(var name in map){
    console.log(name);
}

//   map = map.entries();
//    for in        for of      
 for(var name of map){
        console.log(name);
   }//   [0:"name1",1:"   "][0:"name2",1:"   "];

//for(var [key,value] of map){
    console.log(key,value);//      name1       name2    
 }

//     key
for(var key of map.keys()){
    console.log(key)//name1 name2
}

//   value
for(var value of map.values()){
    console.log(value)//       
}