我试图将函数中的值与 c
连接起来,每次都加 5。但是,我不断收到错误 Uncaught ReferenceError: Invalid left-hand side in assignment
。有谁知道解决方法?我假设我不能将 +
运算符用作连接,然后在 +=
?我很困惑为什么这不起作用。
var c1 = 0;
var c2 = 0;
function(d) {
d.number; //possible value of 1 or 2
c + d.number += 5; //isn't this c1 += 5, or c2 += 5?
"c" + d.number += 5; //also tried this - same error
console.log(c1);
console.log(c2);
;}
最佳答案
如果 Pointy 在评论中所说的不清楚,您可以使用 [ ]
运算符“构造”变量名(正如您尝试做的那样),当它是对象属性时。
这是一个例子:
var cObj = {};
cObj.c1 = 0;
cObj.c2 = 0;
function(d) {
cObj['c' + d.number] += 5;
console.log(cObj.c1);
console.log(cObj.c2);
;}
关于javascript - 在函数中将字符串与变量连接时出现无效的左侧参数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43174797/