Javascript 将数值对象属性结果汇总为NaN
我有一个这样的物体:Javascript 将数值对象属性结果汇总为NaN,javascript,typescript,Javascript,Typescript,我有一个这样的物体: {id: 1, planningVerId: 1, planningVersion: null, p1: 0, p2: 0, p3: 0, p4: 45, p5: 55, p6: 0, p7: 0,…} for (const prop in result) { if (prop.startsWith('p') && prop.length <= 3) { result.sum += Number(result[prop]) };
{id: 1, planningVerId: 1, planningVersion: null, p1: 0, p2: 0, p3: 0, p4: 45, p5: 55, p6: 0, p7: 0,…}
for (const prop in result) {
if (prop.startsWith('p') && prop.length <= 3) { result.sum += Number(result[prop]) };
}
直到第12页。
在后面的代码中,我向对象添加了一个sum属性。现在,我想总结一下p1-p12的值,如下所示:
{id: 1, planningVerId: 1, planningVersion: null, p1: 0, p2: 0, p3: 0, p4: 45, p5: 55, p6: 0, p7: 0,…}
for (const prop in result) {
if (prop.startsWith('p') && prop.length <= 3) { result.sum += Number(result[prop]) };
}
我用控制台检查了它,得到了正确的值,但结果是NaN。为什么?result.sum开头未定义。因此result.sum+3给出NaN:
让结果={}
result.sum+=1
console.logresult.sum;的确我注释掉了代码,在这里我将'sum'属性添加到对象中,当然在本例中它是未定义的。