Javascript 处理/计算两个对象的值并从中生成输出
我有两个对象-一个包含公式,另一个数组对象包含值。 我想加入俱乐部并计算如下所示的产量 Object-1Javascript 处理/计算两个对象的值并从中生成输出,javascript,node.js,mathjs,Javascript,Node.js,Mathjs,我有两个对象-一个包含公式,另一个数组对象包含值。 我想加入俱乐部并计算如下所示的产量 Object-1 { SI:(PxTxR)/100, 比率:P1/P2 } Object-2 [ { P1:34053, P2:45506 }, { P:3403, T:3, R:7.35 P1:34053, P2:45506 } ] 结果: { SI:750.36, 比率:0.74 } 您可以考虑,编译表达式(obj1)和评估范围(obj2的元素) 下面是一个有效的解决方案 const obj1={S
{
SI:(PxTxR)/100,
比率:P1/P2
}
Object-2
[
{
P1:34053,
P2:45506
},
{
P:3403,
T:3,
R:7.35
P1:34053,
P2:45506
}
]
结果:
{
SI:750.36,
比率:0.74
}
您可以考虑,编译
表达式(obj1
)和评估
范围(obj2的元素)
下面是一个有效的解决方案
const obj1={SI:`(P*T*R)/100`,比率:`P1/P2`}
常数obj2=[
{P1:34053,P2:45506},
{P:3403,T:3,R:7.35,P1:34053,P2:45506},
]
const nodeObj1=Object.entries(obj1.map)([expName,exp])=>[
expName,
math.parse(exp.compile(),
])
常量res=obj2.map((obj)=>{
返回Object.fromEntries(
nodeObj1.map([expName,compiledExp])=>{
试一试{
return[expName,compiledExp.evaluate(obj)]
}捕捉(错误){
return[expName,未定义]
}
})
)
})
console.log(res)
您有什么问题?这里的数学很简单。。。