使用+=
运算符为属性分配数字可以NaN
在JavaScript中实现。
该代码按预期工作:
> var result = {};
undefined
> result['value'] = 10;
10
> result['value'] += 10;
20
但是在这里我们得到NaN
:
> var test = {};
undefined
> test['value'] += 10;
NaN
JavaScript为什么会这样表现?我如何不进行初始化就可以使用它result['value'] = 0
?
您无法undefined
在JavaScript中添加数字。如果您不想初始化该数字,则需要在增加该数字之前对其进行测试undefined
:
test['value'] = (typeof test['value']==='undefined') ? 10 : test['value']+10;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句