【发布时间】:2022-12-20 09:47:33
【问题描述】:
如您所见,如果您检查数据源,它有一个键 isEdit 并且它有一个布尔值。 我们将 dataSouce 值与 tempValues 进行比较,因为您可以看到数据源中的列值与 tempValues 上的键。比较之后,我们检查数据源中的值 isEdit 是 true 还是 fals
如果 isEdit 的值为真,则从 tempValues.dealIdleDetailsForFinanceDto 获取值,例如 NVB isEdit 值为真,因此 nvb 值来自 tempValues.dealIdleDetailsForFinanceDto 为 99 否则为 20
检查最终输出的值。
请查看最终输出以进行比较。谢谢。
#数据1
dataSouce = [
{
"name": "NVB",
"value": 0,
"financeValue": 0,
"column": "nvb",
"isEdit": true
},
{
"name": "ROU",
"value": 0,
"financeValue": 0,
"column": "rou",
"isEdit": false
},
{
"name": "Net Present Value",
"value": 0,
"financeValue": 0,
"column": "netPresentValue",
"isEdit": false
},
]
#tempValues
tempValues = {
"transactionId": 20,
"nvb": 20,
"rou": 100,
"netPresentValue": 50,
"dealIdleDetailsForFinanceDto": {
"nvb": 99,
"rou": 4,
"netPresentValue": 88,
}
}
#Sample 最终输出
[
{
"name": "NVB",
"value": 99,
"financeValue": 20,
"column": "nvb",
"isEdit": true
},
{
"name": "ROU",
"value": 100,
"financeValue": 100,
"column": "rou",
"isEdit": false
},
{
"name": "Net Present Value",
"value": 88,
"financeValue": 50,
"column": "netPresentValue",
"isEdit": true
}
]
#示例代码
const finalOutput = dataSource.map(item => {
// Look up the value in tempValues using the column property of the object
if(item.isEdit) {
}
const financeValue = tempValues[item.column];
// Return a new object with the updated value property
return {
...item,
financeValue,
};
});
【问题讨论】:
-
在这个例子中,
dataSouce[2].isEdit应该是true吗? -
不,有些值是真的,有些值是假的
-
在这种情况下,最终输出如何为该对象提供
isEdit: true,以及为什么它从tempValues.dealIdleDetailsForFinanceDto中的属性获取值? -
先生,请基于最终输出,您就会明白
-
抱歉,数据和描述之间似乎存在不一致。很乐意提供帮助,但如果描述与数据不符,那将非常困难。
标签: javascript typescript