首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS基础:Map和Set对象

本章节复习的是JS中的Map和Set对象,是个集合。 前置知识: Map和Set对象是在ES6中被引入的,作为一种由 key值标记的数据容器。...Map和Set对象承载的数据元素可以按照插入时的顺序,被迭代遍历。 1 Set对象 介绍: Set数据结构类似数组,但所有成员的值唯一。...对象只能用字符串当做键,给开发带来很大限制,ES6增加 Map数据结构,使得各种类型的值(包括对象)都可以作为键。...['abc'] ]] 数组 转 Map let a = [ ['name','leo'], [1, 'hi' ]] let b = new Map(a); Map对象 如果所有 Map 的键都是字符串...({yes: true, no: false}) // Map {"yes" => true, "no" => false} Map 转 JSON (1)Map键名都是字符串,转为对象JSON: function

12.3K31
您找到你想要的搜索结果了吗?
是的
没有找到

jsmap遍历数组对象_js遍历数组

forEach()和map()都是遍历数组的方法,用法类似,但是还是有很大区别: 相同点:       1.都是循环遍历数组中的每一项;       2.在遍历中执行匿名函数都可以接收三个参数,分别为...不同点:       map():       根据遍历执行的匿名函数,对于原数组中的每个值产生一个对应的值,并返回一个新的数组,存在一个映射关系,并且不会改变原数组,不会对空数组进行检测。...arr.forEach(function(i,index,arr){ sum += i; console.log("sum的值为:",sum); }) //执行5次,最终结果 10 ** js...中 map 遍历数组 ** map 方法会迭代数组中的每一个元素,并根据回调函数来处理每一个元素,最后返回一个新数组。...例子:使用 map 方法来为 oldArray 中的每一项增加3,并且在 newArray 中保存它们。 oldArray 不应该被改变。

19.4K30

何时使用 Map 来代替普通的 JS 对象

作者:Dmitri Pavlutin 译者:前端小智 来源:dmitripavlutin JS 普通对象 {key: 'value'} 用于存放结构化数据。...在这种情况下不会有错误: const names = { 1: 'One', 2: 'Two', }; Object.keys(names); // => ['1', '2'] JS 会隐式地将对象的键转换为字符串...Map 接受任何类型的键 如前所述,如果对象的键不是 string 或 symbol,JS 将隐式地将其转换为字符串。...2. map 对键名没有限制 JS 中的任何对象都从原型对象继承属性,普通对象也是如此。...总结 普通 JS 对象通常可以很好地保存结构化数据,但它们也有一些局限性: 只能用字符串或 sybmol 作为键 自己的对象属性可能会与从原型继承的属性键冲突(例如 toString,constructor

2.2K20

js Map用法

ECMAScript 6 以前,在 JavaScript 中实现“键/值”式存储可以使用 Object 来方便高效地完成,也就是使用对象属性作为键,再使用属性来引用值。...创建 使用 new 关键字和 Map 构造函数可以创建一个空映射: const m = new Map(); 如果想在创建的同时初始化实例,可以给 Map 构造函数传入一个可迭代对象,需要包含键/值对数组...可迭代对象中的每个键/值对都会按照迭代顺序插入到新映射实例中(类似于二维数组): const m = new Map([ ["小明", 100], ["小红", 90], ["小兰...有的人这时候就要说了,我用对象一样也可以做到呀。嗯~,没毛病。...不过,对于在乎内存和性能的开发者来说,对象和映射之间确实存在显著的差别。

8K30

别把对象Map

使用 JavaScript 开发过程中,我们经常会借助对象 Object 来存储数据,从某种意义上,其作用类似 Map,均为 key: value 键值对的方式存储。 那二者又有啥区别的?...(YY:一定有,否则 Map 的存在就没有意义了) 结论:JavaScript 中的对象是糟糕的 Map,只能使用字符串类型作为 key,并且存在访问原型属性的风险。...dictionary.zh['constructor'] === 'undefined' // false // "ƒ Object() { [native code] }" 原因很清楚,是由于 JavaScript 原型对象导致...(constructor 是原型对象的属性,指向构造函数本身);但,当做 Map 使用时,原型对象的属性需要格外注意,避免造成混乱!...element'} map[secondElement] = {data: 'second element'} map[firstElement].data = 'new data' 这里map中值保留了

28410
领券