ES6新屬性(追加)


話不多說,直接進正題

一、Map

Map也是ES6新增的一種數據類型,它的本質和對象一樣都是鍵值對的集合。
與對象不同的是,它的鍵值可以是各種數據類型
首先我們創建一個Map數據
//用var創建一樣
let map1 = new Map();

我們通過Object實例化兩個對象

var obj1 = new Object();
var obj2 = new Object();

我們使用set方法對Map進行添加值

map1.set(obj1,"對象鍵值1");
map1.set(obj2,"對象鍵值2");
console.log(map1);

還可以用get方法進行取值

console.log(map1.get(obj1));
console.log(map1.get(obj2));

has方法判斷是否存在

console.log(map1.has(obj2));

delete方法刪除數據

map1.delete(obj2);
console.log(map1.has(obj2));

size屬性可返回其大小,類似數組的length屬性

console.log(map1.size)

clear方法清空數據

map1.clear();
console.log(map1.size);
數組作為構造函數參數
let arrMap = new Map([['name','lemon'],['age','18']]);
console.log(arrMap);
forEach遍歷Map
arrMap.forEach(function(val,key){
    console.log(key+":"+val);
});
轉換成數組    擴展運算符
 
        
let arr = [...arrMap];
console.log(arr);
 
        

for  of 循環

for(let i of arrMap){
  console.log(i);
}
鍵迭代器
let keys = arrMap.keys();
console.log(keys);
for(var i = 0 ; i < arrMap.size; i++){
    console.log(keys.next().value);
}
值迭代器
let vals = arrMap.values();
console.log(vals);

數字類型的鍵值

let map = new Map([[1,"zhangsan"],[2,"lisi"]]);
map.forEach(function(val,key){
    console.log(key+":"+val);
});

 

 
 


免責聲明!

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



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