一、Map定義和基本用法
Map
是一種鍵值對集合,其中鍵和值都可以是任何類型(對象、原始值等)。與普通對象不同,Map
保持鍵值對的插入順序,并且允許使用任何類型的鍵。
1、創建Map
const map = new Map()
2、添加鍵值對。語法:map.set(鍵名, 值)
map.set('name', 'John')
map.set(1, 'one')
map.set(true, ['boolean'])
3、獲取值。語法:map.get(鍵名)
console.log(map.get('name')); // 輸出: John
console.log(map.get(1)); // 輸出: one
console.log(map.get(true)); // 輸出: ['boolean']
4、檢查鍵。
console.log(map.has('name')); // 輸出: true
5、刪除鍵值對
map.delete('name');
console.log(map.has('name')); // 輸出: false
6、獲取Map的大小
console.log(map.size); // 輸出: 2
7、簡單示例
const map = new Map()
data.failedList.forEach((item) => {if (map.has(item.failedReason)) {// 如果已存在該失敗原因,取出數組并 push 當前 vinconst vinList = map.get(item.failedReason)vinList.push(item.vin)} else {// 如果不存在,初始化一個數組存儲當前 vinmap.set(item.failedReason, [item.vin])}})
console.log('最終結果:', map)
//map.forEach((值, 鍵名) => {?
//})
map.forEach((vinLists, failedReasons) => {useMessage().error(`VIN碼${vinLists.join(',')}:${failedReasons}`)
})
二、Set定義和基本用法
Set
是一種值的集合,其中每個值都是唯一的,且值可以是任何類型。Set
不允許重復的值。
1、創建Set
const set = new Set();
2、添加值
set.add(1);
set.add(5);
set.add(1); // 重復值不會被添加
console.log(set.size); // 輸出: 2
3、檢查值
console.log(set.has(1)); // 輸出: true
console.log(set.has(2)); // 輸出: false
4、刪除值
set.delete(5);
console.log(set.has(5)); // 輸出: false