首页 > 其他分享 >JS Map Set

JS Map Set

时间:2022-09-26 15:25:08浏览次数:63  
标签:Map Set get JS set Adam prototype

Map是一组键值对的结构,具有极快的查找速度。

 

1.Map是键值对,Set是值得集合,当然键和值可以是任何的值;
2.Map可以通过get⽅法获取值,⽽set不能因为它只有值;
3.都能通过迭代器进⾏for...of遍历;
4.Set的值是唯⼀的可以做数组去重,Map由于没有格式限制,可以做数据存储

 

Map : set ,get has,delete clear, foreach

var m = new Map(); // 空Map
m.set('Adam', 67); // 添加新的key-value
m.set('Bob', 59);
m.has('Adam'); // 是否存在key 'Adam': true
m.get('Adam'); // 67
m.delete('Adam'); // 删除key 'Adam'
m.get('Adam'); // undefined

 

 

Set: add ,delete, has, clear

 

一、set

1、定义:set是一种数据结构,类似于数组,但成员的值都是唯一的。

2、去除数组的重复成员:[...new set(array)]。

3、set实例的属性和方法

3.1、set.prototype.size 总数

3.2、set.prototype.add(value) 添加值,返回set本身

3.3、set.prototype.delete(value) 删除值,返回布尔值,表示删除是够成功

3.4、set.prototype.has(value) 返回布尔值,表示该值是否是set成员

3.5、set.prototype.clear() 清除所有成员,无返回值

4、Array.from方法可以将set结构转化为数组

例:const items = new Set([1,2,3,4,5])

const array = Array.from(items)

5、遍历

5.1、forEach(键值,键名,集合本身);

5.2、扩展运算符(...)

二、Map

1、定义:Map数据结构,类似于对象,也是键值对的集合,但是键不仅仅局限于字符串,各种类型的值都可以。

2、方法(简单罗列,不做一一描述)

set()、get()、has()、delete()、clear()

3、转换

3.1、对象转换成Map let map = new Map(Object.entries(obj));

3.2、Map转为数组 [...myMap]
 

标签:Map,Set,get,JS,set,Adam,prototype
From: https://www.cnblogs.com/mc-congxueda/p/16731053.html

相关文章

  • js闭包的理解。
    一、概念闭包函数:声明在一个函数中的函数叫做闭包。闭包:内部函数总是可以访问其在外部函数声明的参数和变量,使其它在外部函数被返回。二、特点1.让外部访问函数内部变......
  • 数据类型,bool,tuple,set,用户交互,格式化输出,运算符
    基本数据类型之布尔值bool1.用来判断事物的对错是否可行只要用于流程控制中2.只有两种状态True对的真的可行的False错的假的不可行的3.python中所有......
  • Stream流中的常用方法_map 和Stream流中的count方法
    映射:map:如果需要将流中的元素映射到另一个流中,可以使用map方法<R>Stream<R>map(Function<?superT,?extendsR>mapper);该接口需要一个Function函数式接口参数,可......
  • js红宝书学习笔记(一)引用类型
    一.引用类型  ECMAScript中,引用类型是一种数据结构称之为对象定义,,引用对象不同于传统面向对象语言所支持的类和接口等基本结构 创建Object实例的两种方式:new操......
  • [RxJS] ShareReplay vs share
    ShareReplayisusingReplaySubject.Itwillreplythemessagestolatersubscribers.Itturnsunicastobservabletomulticaseobservable.shareReplay(1,2000):......
  • [Rxjs] Build a basic application store with Subjects
    Store.jsimport{BehaviorSubject,Subject}from'rxjs';import{map,distinctUntilKeyChanged,scan}from'rxjs/operators';exportclassObservableStore{......
  • JS高级
    1.作用域1.1局部作用域局部作用域分为函数作用域和块作用域({})var是函数作用域const,let是块作用域1.2全局作用域<script>和js文件的最外层是全局作用域1.3作......
  • 如何以干净的方式在 NextJs 中创建请求中间件
    如何以干净的方式在NextJs中创建请求中间件中间件是每个API的一个重要方面,它们在NextJs项目中也很有用,但官方文档没有教你如何实现它们,幸好你找到了这篇我将教你如......
  • JS promise 原理
    Promise对象有三种状态:pending、fullfilled 和 rejected,分别代表了promise对象处于等待、执行成功和执行失败状态。创建promise对象后处于pending状态,pending状态......
  • 【code基础】HashMap在查找和降低时间复杂度方面的应用
    HashMap由于使用key:value形式,可以实现快速查找。通常能将时间复杂度降维//2.进阶:你可以想出一个时间复杂度小于O(n2)的算法吗?使用哈希表publicint[]two......