You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							74 lines
						
					
					
						
							1.1 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							74 lines
						
					
					
						
							1.1 KiB
						
					
					
				| = 集合操作 | |
| 
 | |
| == Map | |
| [source,javaScript] | |
| ---- | |
| # 创建实例 | |
| let map = new Map(); | |
| let map2 =new Map([ | |
|     ['A',1], | |
|     ['B',2] | |
| ]); | |
| 
 | |
| # 添加 key-value | |
| map.set('A',1); | |
| 
 | |
| map2.set('C',3) | |
|     .set('D',4); | |
| 
 | |
| # 通过 key 获取值 | |
| map.get('A'); | |
| 
 | |
| # 是否存在 | |
| map.has('A'); | |
| 
 | |
| # 删除 | |
| map.delete('A'); | |
| 
 | |
| # 获取 size | |
| let size =map.size; | |
| 
 | |
| # 清空数据 | |
| map.clear(); | |
| 
 | |
| # 使用 keys() 遍历 | |
| for (let key of map.keys()) { | |
|     console.log(key); | |
| } | |
| 
 | |
| # 使用 values() 遍历 | |
| for (let value of map.values()) { | |
|     console.log(value); | |
| } | |
| 
 | |
| # 同时遍历 | |
| for (let [key, value] of map) { | |
|     console.log(key, value); | |
| } | |
| 
 | |
| # | |
| ---- | |
| 
 | |
| == Set 常用方法 | |
| 
 | |
| [source,javaScript] | |
| ---- | |
| // 数组去重 | |
| var mySet = new Set([1, 2, 3, 4, 4]); | |
| [...mySet]; // [1, 2, 3, 4] | |
| 
 | |
| // 并集 | |
| var a = new Set([1, 2, 3]); | |
| var b = new Set([4, 3, 2]); | |
| var union = new Set([...a, ...b]); // {1, 2, 3, 4} | |
| 
 | |
| // 交集 | |
| var a = new Set([1, 2, 3]); | |
| var b = new Set([4, 3, 2]); | |
| var intersect = new Set([...a].filter(x => b.has(x))); // {2, 3} | |
| 
 | |
| // 差集 | |
| var a = new Set([1, 2, 3]); | |
| var b = new Set([4, 3, 2]); | |
| var difference = new Set([...a].filter(x => !b.has(x))); // {1} | |
| ---- |