我有这段代码。如果未定义,它会增加数组中的值或将其设置为 1:
if(typeof sum[period][count] === "undefined"){
sum[period][count] = 1
}else{
sum[period][count]++;
}
我想像这样让它更短、更少重复:
node = sum[period][count];
if(typeof node === "undefined"){
node = 1
}else{
node++;
}
甚至
node = typeof node === "undefined"? 1 : node+1;
但它不起作用,为什么不起作用,我能做些什么呢?
最佳答案
由于值 sum[period][count]
是原始值,您无法获得对它的引用。您可以通过将包含此值的对象分配给变量来缩短它:var node = sum[period]
并测试 node[count]
。但是,它并没有短很多:
var node = sum[period];
if(typeof node[count] === "undefined"){
node[count] = 1
}else{
node[count]++;
}
关于javascript - 我可以创建一个引用对象中节点的变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32720587/