【发布时间】:2023-02-08 23:42:07
【问题描述】:
我有一个包含父母和孩子的数组以及孩子的费用(可以有超过 3 项费用)。 我想过滤按父母分组的列表,并向父母展示孩子的组合在哪些地方有正负支出。 过滤掉只有正支出或只有负支出的父母。
输入数组:
let inputArray1 = [
{
'parent':'A',
'child':'RST',
'expense1':1,
'expense2':2,
'expense3':3,
},
{
'parent':'A',
'child':'EST',
'expense1':4,
'expense2':5,
'expense3':6,
},
{
'parent':'A',
'child':'QST',
'expense1':4,
'expense2':2,
'expense3':6,
},
{
'parent':'B',
'child':'EST',
'expense1':1,
'expense2':2,
'expense3':-3, //. <----Negative Expense
},
{
'parent':'B',
'child':'VST',
'expense1':6,
'expense2':2,
'expense3':3,
},
{
'parent':'B',
'child':'NST',
'expense1':3,
'expense2':8,
'expense3':7,
},
{
'parent':'C',
'child':'UST',
'expense1':-8,
'expense2':-2,
'expense3':3, //<--- Positive Expense
},
{
'parent':'C',
'child':'PST',
'expense1':-6,
'expense2':-5,
'expense3':-3,
},
{
'parent':'C',
'child':'LST',
'expense1':-3,
'expense2':-8,
'expense3':-7,
},
{
'parent':'D',
'child':'WST',
'expense1':-8,
'expense2':-2,
'expense3':-3,
},
{
'parent':'D',
'child':'CST',
'expense1':-6,
'expense2':-5,
'expense3':-3,
},
{
'parent':'B',
'child':'KST',
'expense1':-3,
'expense2':-8,
'expense3':-7,
}
]
输出数组:它应该只有 B 和 C,因为它们在孩子费用中有正负费用的组合。
let inputArray1 = [
{
'parent':'B',
'child':'EST',
'expense1':1,
'expense2':2,
'expense3':-3,
},
{
'parent':'B',
'child':'VST',
'expense1':6,
'expense2':2,
'expense3':3,
},
{
'parent':'B',
'child':'NST',
'expense1':3,
'expense2':8,
'expense3':7,
},
{
'parent':'C',
'child':'UST',
'expense1':-8,
'expense2':-2,
'expense3':3,
},
{
'parent':'C',
'child':'PST',
'expense1':-6,
'expense2':-5,
'expense3':-3,
},
{
'parent':'C',
'child':'LST',
'expense1':-3,
'expense2':-8,
'expense3':-7,
},
]
【问题讨论】:
-
您已经尝试过什么代码?为什么它不起作用?
-
如果父母有一些孩子只有正支出,而其他孩子只有负支出,没有特定的孩子有混合支出怎么办?你包括那个父母吗?
标签: javascript typescript loops filter ecmascript-6