<script>
//数据
let listData = [
{ cityId: 1, dt: '2013' },
{ cityId: 2, dt: '2014' },
{ cityId: 3, dt: '2013' },
{ cityId: 4, dt: '2014' },
{ cityId: 1, dt: '2011-09' },
{ cityId: 2, dt: '2012-08' },
]
//筛选方法
const screenList = listData => {
let arrList = new Map()
listData.forEach(item => {
if (arrList.has(item.cityId)) {
let value = arrList.get(item.cityId)
value.push(item)
arrList.set(item.cityId, value)
} else {
arrList.set(item.cityId, [item])
}
})
console.log('arrList', arrList)
console.log('扩展运算符-深拷贝', [...arrList])
}
screenList(listData)
</script>
打印结果

这段代码展示了如何使用JavaScript处理数据,通过遍历和Map对象将具有相同cityId的项归并到一起。筛选方法`screenList`接收一个包含`cityId`和`dt`属性的对象数组,然后创建一个Map来存储归并后的数据。最终输出的是一个深拷贝的Map对象,便于进一步操作或分析。
925

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



