array:[
{
"tradeTime":[
{
"amount":-5000,
"goodsInfo":"翡翠城租金",
"tradeTime":"2019-04-20"
},
{
"amount":2000,
"goodsInfo":"微信充值",
"tradeTime":"2019-04-21"
},
{
"amount":-1200,
"goodsInfo":"五联西苑租金",
"tradeTime":"2019-04-25"
},
{
"amount":-200,
"goodsInfo":"爱与家宾馆",
"tradeTime":"2019-04-30"
}
]
},
{
"tradeTime":[
{
"amount":-3800,
"goodsInfo":"丁香花园",
"tradeTime":"2019-05-20"
},
{
"amount":5000,
"goodsInfo":"微信充值",
"tradeTime":"2019-05-22"
},
{
"amount":-2500,
"goodsInfo":"滨兴小区",
"tradeTime":"2019-05-28"
}
]
},
{
"tradeTime":[
{
"amount":-2800,
"goodsInfo":"滨苑小区",
"tradeTime":"2019-06-08"
}
]
}
]
好熟悉的数组,上次那个按月份分组我回答过,再帮你一次
let array = [{
"tradeTime":[{
"amount":-5000,
"goodsInfo":"翡翠城租金",
"tradeTime":"2019-04-20"
},{
"amount":2000,
"goodsInfo":"微信充值",
"tradeTime":"2019-04-21"
},{
"amount":-1200,
"goodsInfo":"五联西苑租金",
"tradeTime":"2019-04-25"
},{
"amount":-200,
"goodsInfo":"爱与家宾馆",
"tradeTime":"2019-04-30"
}]
},{
"tradeTime":[{
"amount":-3800,
"goodsInfo":"丁香花园",
"tradeTime":"2019-05-20"
},{
"amount":5000,
"goodsInfo":"微信充值",
"tradeTime":"2019-05-22"
},{
"amount":-2500,
"goodsInfo":"滨兴小区",
"tradeTime":"2019-05-28"
}]
},{
"tradeTime":[{
"amount":-2800,
"goodsInfo":"滨苑小区",
"tradeTime":"2019-06-08"
}]
}]
function statisticsAmount(arr) {
let result = []
arr.forEach(item => {
let income = 0;
let expend = 0;
let date = item.tradeTime[0].tradeTime;
let month = date.slice(date.indexOf('-')+1, date.lastIndexOf('-'))
item.tradeTime.forEach(info => {
if (info.amount >= 0) {
income += info.amount
} else {
expend += info.amount
}
})
result.push({
month: month, // 月份
income: income, // 收入
expend: expend // 支出
})
});
return result;
}
console.log(statisticsAmount(array))
或者返回成对象格式:
function statisticsAmount(arr) {
let result = {}
arr.forEach(item => {
let income = 0;
let expend = 0;
let date = item.tradeTime[0].tradeTime;
let month = date.slice(date.indexOf('-')+1, date.lastIndexOf('-'))
item.tradeTime.forEach(info => {
if (info.amount >= 0) {
income += info.amount
} else {
expend += info.amount
}
})
result[month] = {
income: income, // 收入
expend: expend // 支出
}
});
return result;
}
要哪种自己选吧