一、Map
Map在原生的js中对应的是Object这样的结构,它都是key-value的键值对,并且它是无序的

二、 API
(一) set:设定值

(二)delete:删除值

每做一次增删改查都会把这些数据重新生成一份,如果要想删除多个key的话,对内存的消耗也是很大的,所以deleteAll是一次删除多个key,然后只返回一次新的对象
(三)deleteAll:批量删除

(四)clear:清除所有返回新Map

(五)update:更新

(六)merge:合成N个Map为一个Map

(七)mergeWith:指定了merge的规则
第一个参数表示:如果值重复的话应该怎么办

(八)setIn:对于嵌套结构来进行设置值

(九)toJS() 与 toJSON():转换为对象
toJS() 是深转换
toJSON() 是浅转换
浅转换只转换一层,深转换可以转换出每一层对象


(十)toArray:转换为数组

(十一)toObject:转换为Object

(十二)equals:判断两个map的值是否相等

(十三)find:查找,匹配的第一个

(十四)flatten:拉平Map
false是深拉平,true是浅拉平


(十五)has:判断是否有指定的key

(十六) includes:判断是否有指定的value

(十七)forEach

本文详细介绍了JavaScript中的Map对象,强调其无序的key-value特性,并列举了核心API,如set、delete、clear、update、merge等。重点讨论了批量操作如deleteAll和mergeWith的内存消耗及使用场景。同时,提到了Map到其他数据结构的转换方法,如toJS、toJSON、toArray和toObject。此外,还涵盖了Map的查询、遍历和判断方法,如has、includes、forEach等,帮助开发者更高效地操作Map。
6248

被折叠的 条评论
为什么被折叠?



