标签:它的 orange mount 存在 去重 初始化 unique 迭代 不同
1 let map = new Map(); 2 3 map.set(‘1‘, ‘str1‘); // 字符串键 4 map.set(1, ‘num1‘); // 数字键 5 map.set(true, ‘bool1‘); // 布尔值键 6 7 // 普通的 Object 会将键转化为字符串 8 // Map 则会保留键的类型,所以下面这两个结果不同: 9 console.log(map.get(1)); // ‘num1‘ 10 console.log(map.get(‘1‘)); // ‘str1‘ 11 console.log(map.size); // 3 12 13 // 使用对象作为键是 Map 最值得注意和重要的功能之一。 14 15 // 可以链式调用 16 map.set(‘1‘, ‘str1‘) 17 .set(1, ‘num1‘) 18 .set(true, ‘bool1‘);
1 let recipeMap = new Map([ 2 [‘cucumber‘, 500], 3 [‘tomatoes‘, 350], 4 [‘onion‘, 50] 5 ]); 6 7 // 遍历所有的键(vegetables) 8 for (let vegetable of recipeMap.keys()) { 9 console.log(vegetable); // cucumber, tomatoes, onion 10 } 11 12 // 遍历所有的值(amounts) 13 for (let amount of recipeMap.values()) { 14 console.log(amount); // 500, 350, 50 15 } 16 17 // 遍历所有的实体 [key, value] 18 for (let entry of recipeMap) { // 与 recipeMap.entries() 相同 19 console.log(entry); // cucumber,500 (and so on) 20 }
1 // 键值对 [key, value] 数组 2 let map = new Map([ 3 [‘1‘, ‘str1‘], 4 [1, ‘num1‘], 5 [true, ‘bool1‘] 6 ]); 7 8 console.log(map.get(‘1‘)); // str1
1 let obj = { 2 name: "John", 3 age: 30 4 }; 5 6 let map = new Map(Object.entries(obj)); 7 8 console.log(map.get(‘name‘)); // John
1 let map = new Map(); 2 map.set(‘banana‘, 1); 3 map.set(‘orange‘, 2); 4 map.set(‘meat‘, 4); 5 6 // let obj = Object.fromEntries(map.entries()); // 创建一个普通对象 7 let obj = Object.fromEntries(map); // 省掉 .entries()
1 let set = new Set(); 2 3 let john = { name: "John" }; 4 let pete = { name: "Pete" }; 5 let mary = { name: "Mary" }; 6 7 // visits,一些访客来访好几次 8 set.add(john); 9 set.add(pete); 10 set.add(mary); 11 set.add(john); 12 set.add(mary); 13 14 // set 只保留不重复的值 15 alert(set.size); // 3 16 17 for (let user of set) { 18 alert(user.name); // John(然后 Pete 和 Mary) 19 } 20 21 // 可以使用 for..of 或 forEach 来遍历 Set 22 let set = new Set(["oranges", "apples", "bananas"]); 23 24 for (let value of set) alert(value); 25 26 // 与 forEach 相同: 27 set.forEach((value, valueAgain, set) => { 28 alert(value); 29 });
1 function unique(arr) { 2 let set = new Set(arr); 3 return set; 4 } 5 6 let values = ["Hare", "Krishna", "Hare", "Krishna", 7 "Krishna", "Krishna", "Hare", "Hare", ":-O" 8 ]; 9 10 console.log(unique(values)); // ["Hare", "Krishna", ":-O"]
标签:它的 orange mount 存在 去重 初始化 unique 迭代 不同
原文地址:https://www.cnblogs.com/feng-fengfeng/p/12399101.html