ES6(九)set、map数据结构

Set 元素不会重复

let list = new Set()
list.add(5)
list.add(7)
console.log(list)
// 长度
console.log(list.size)

let arr = [1, 2, 3, 4, 5]
let list = new Set(arr)
console.log(list)

去重

let arr = [1, 2, 3, 4, 2, 3, 4, 3, 4]
let list = new Set(arr)
console.log(list)

增删查改

let arr = [‘add‘, ‘delete‘, ‘clear‘, ‘has‘]
let list = new Set(arr)
// 是否在数组里
console.log(list.has(‘add‘))
// 删除
list.delete(‘add‘)
console.log(list)
// 清空
list.clear()
console.log(list)

let arr = [33, 11, 35, 78, 99]
let list = new Set(arr)
for (let key of list.keys()) {
  console.log(key)
}
for (let value of list.values()) {
  console.log(value)
}
for (let value of list) {
  console.log(value)
}
for (let [key, value] of list.entries()) {
  console.log(key, value)
}
list.forEach(item => {
  return console.log(item)
})

和Set增删查改循环一样

// 区别:weakList只能接收对象
// 只具有 add has delete方法
let weakList = new WeakSet()

let obj = {
  name: ‘ronle‘
}
weakList.add(obj)
console.log(weakList)
console.log(weakList.has(obj))

Map(增加值是用set方法,而不是add)

let map = new Map()
let key = [‘123‘]

map.set(key, ‘456‘)
console.log(map)
// 获取对应key的值  456
console.log(map.get(key))

let map = new Map([[‘a‘, ‘123‘], [‘b‘, 456]])
map.set(‘c‘, ‘789‘)
for (let [key, value] of map.entries()) {
  console.log(key, value)
}
console.log(map.size)
console.log(map.has(‘b‘))
console.log(map.delete(‘a‘))
console.log(map.clear())

let weakMap = new WeakMap()
let obj = {}
// 只具有set get has delete方法
weakMap.set(obj, 123)
console.log(weakMap)
console.log(weakMap.get(obj))

原文地址:https://www.cnblogs.com/ronle/p/11494602.html

时间: 2024-08-30 15:30:07

ES6(九)set、map数据结构的相关文章

js ES6 Set和Map数据结构详解

这篇文章主要介绍了ES6学习笔记之Set和Map数据结构,结合实例形式详细分析了ECMAScript中基本数据结构Set和Map的常用属性与方法的功能.用法及相关注意事项,需要的朋友可以参考下 本文实例讲述了ES6学习笔记之Set和Map数据结构.分享给大家供大家参考,具体如下: 一.Set ES6提供了新的数据结构Set.类似于数组,只不过其成员值都是唯一的,没有重复的值. Set本身是一个构造函数,用来生成Set数据结构. 1 . Set函数可以接受一个数组(或类似数组的对象)作为参数,用来

es6 Set 和Map 数据结构

ES6提供了新的数据结构Set,它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个数据结构,用来生成Set 数据结构. const s = new Set(); [2,3,5,4,5,2,2,2].forEach(x=>s.add(x)); for(let i of s) { console.log(i); } // 2 3 5 4 Set 函数可以接受一个数组作为参数. 可以利用去除数组重复成员的方法. [...new Set(array)] // 去除数组重复变量成员

ES6 set和map数据结构对对象数组去重简单实现

自从有了es6的set数据结构,数组的去重可以简单用一行代码实现,比如下面的方式 let arr = [1, 2, 2, 3, 4] function unique (arr) { return [...new Set(arr)] } console.log(unique(arr)) // [1, 2, 3, 4] 但是当数组的项不再是简单的数据类型时,比如是对象时,这种方法就会导致错误,比如下面的结果 let arr = [ { name: 'a', num: 1}, { name: 'b',

ES6 -Set 和 Map 数据结构

一.set 1.set数据结构:类似数组,但是里面不能有重复值 2.set语法, new Set([]) let set=new Set([1,2,1]); console.log(set);// {1, 2} 3.set 方法 // add() 增加,返回增加后的set console.log(set.add(3)); // {1, 2,3} // delete() 删除,返回true或false console.log(set.delete(2));// true // has() 判断是否

ES6中的Set、Map数据结构

Map.Set都是ES6新的数据结构,他们都是新的内置构造函数.也就是说typeof的结果,多了两个. 他们是什么:  Set是不能重复的数组.    Map是可以任何东西当做键的对象: ES6 提供了新的数据结构 Set.它类似于数组,但是Set成员的值都是唯一的,没有重复的值. let m = new Set(); m.add(1); m.add(2); m.add(3); m.add(3); m.add(3); m.add(4); m.add(5); console.log(m); 集合中

ES6 之 Set数据结构和Map数据结构 Iterator和for...of循环

ECMAScript 6 入门 Set数据结构 基本用法 ES6提供了新的数据结构Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set本身是一个构造函数,用来生成Set数据结构. var s = new Set(); [2, 3, 5, 4, 5, 2, 2].map(x => s.add(x)); for (let i of s) { console.log(i); } // 2 3 5 4 上面代码通过add方法向Set结构加入成员,结果表明Set结构不会添加重复的值. 向S

es6笔记(5)Map数据结构

概要 字典是用来存储不重复key的Hash结构.不同于集合(Set)的一点,字典使用的是[key,value]的形式来存储数据. JavaScript的对象(Object:{})只能用字符串当做key.使用起来有一定限制. 为了解决这个问题,ES6提供的Map数据结构.它类似与对象,也是[key,value]的集合,但是key的范围不限于字符串,各种类型的值(包括对象)都可以当做key. 也就是说Object结构提供了 "字符串--值"的对应: Map提供了"值--值&quo

es6的Set和Map数据结构

Set 和 Map 数据结构 Set WeakSet Map WeakMap Set § ? 基本用法 ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. const s = new Set(); [2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x)); for (let i of s) { console.log(i); } // 2 3 5 4 上面代码通过add

ES6之路第九篇:Set和Map数据结构

set 基本用法 ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. 1 const s = new Set(); 2 3 [2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x)); 4 5 for (let i of s) { 6 console.log(i); 7 } 8 // 2 3 5 4 上面代码通过add方法向 Set 结构加入成员,结果表明 Set 结构不

ES6的新特性(12)——Set 和 Map 数据结构

Set 和 Map 数据结构 Set 基本用法 ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. const s = new Set(); [2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x)); for (let i of s) { console.log(i); } // 2 3 5 4 上面代码通过add方法向 Set 结构加入成员,结果表明 Set 结构不会