坑: 最开始用遍历,遍历后结果会是以该属性为序号,且代码繁杂 后期计算也会出问题 ,特别是计算价钱
所以就有了以下:
function classify(arr){
let obj = {}
arr.map(v => {
obj[v.createTime] = 0
})
let timeArr = Object.keys(obj)
console.log('timeArr', timeArr)
let result = timeArr.map(v => {
return {
data: arr.filter(_v => v == _v.createTime)
}
})
return result
}
var arr = [
{unitPrice: 12, memberPrice: 10, createTime: 1562919374000 },
{unitPrice: 12, memberPrice: 11, createTime: 1562919374000 },
{unitPrice: 39, memberPrice: 39, createTime: 1562919399000 },
{unitPrice: 18, memberPrice: 16, createTime: 1562919686000 },
{unitPrice: 24, memberPrice: 24, createTime: 1562919686000 }
]
console.log(classify(arr))
以上 Object.keys():返回对象自身的所有可枚举的属性的键名。
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
打印出来的结果如下:
这样就完成了 。。
以上。。