1. new Map()
let data = new Map()
data.set(key,value) 添加一个新建元素到映射 //Map(1) {key => value}
data.get(key) 返回映射中的指定元素
data.has(key) 如果映射包含指定元素,返回true
data.clear(key) 从映射中移除所有元素
data.delete(key) 从映射中移除指定元素
data.valueof(key) 返回指定对象的原始值
data.forEach(function) 遍历映射中的元素
实例封装
/* 自定义数组类 */
export class CustomArray extends CustomData{
constructor(arr) {
super()
this.arr = arr
}
unique() {
const map = new Map()
return this.arr.filter(item => !map.has(JSON.stringify(item)) && map.set(JSON.stringify(item), 1))
}
/*
* 修改数组中对象的字段名称
* @newKey *新字段名称
* @oldKey *旧字段名称
*/
changeKey(newKey, oldKey) {
/*
for(let key in arr) 数组时遍历下标,对象时遍历键名
for(let item of arr) 数组时遍历元素,遍历对象时会报错
条件中设置添加新的key,并且将旧值设置取反,然后把原先的键值对删除
*/
for (const item of this.arr) for (const key in item) key === oldKey && (item[newKey] = !item[key], delete item[key])
return this.arr
}
}
待续。。。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)