js中的Map對象


            var map = new Map();
//map對象中添加鍵值對 map.set("name","tom"); map.set("age",35); map.set("sex",0); //獲取map對象中的值 map.get("name")//tom //遍歷map 函數中第一個參數是value,第二個參數是key

        map.forEach(function (value, key) {
          console.log(value, key);
        })

 
        

 ES6中的Map結構

const map = new Map();
map.set('first', 'hello');
map.set('second', 'world');

for (let [key, value] of map) {
  console.log(key + " is " + value);
}
// first is hello
// second is world

//只獲取key
for (let [key] of map) {  // ... }
//只獲取key
for (let [, value] of map) {  // ... }

Map 也可以接受一個數組作為參數。該數組的成員是一個個表示鍵值對的數組。

const map = new Map([
  ['name', '張三'],
  ['title', 'Author']
]);

map.size // 2
map.has('name') // true
map.get('name') // "張三"
map.has('title') // true
map.get('title') // "Author"

 

Map 結構轉為數組結構,比較快速的方法是使用擴展運算符(...

const map = new Map([
  [1, 'one'],
  [2, 'two'],
  [3, 'three'],
]);

[...map.keys()]
// [1, 2, 3]

[...map.values()]
// ['one', 'two', 'three']

[...map.entries()]
// [[1,'one'], [2, 'two'], [3, 'three']]

[...map]
// [[1,'one'], [2, 'two'], [3, 'three']]

數組結構轉為Map結構,將數組傳入 Map 構造函數,就可以轉為 Map。

new Map([
  [true, 7],
  [{foo: 3}, ['abc']]
])
// Map {
//   true => 7,
//   Object {foo: 3} => ['abc']
// }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM