Javascript 如何强制将字符串 + 变量评估为变量
Javascript How do I force a string + variable to be evaluated as a variable
我什至不知道如何措辞,这可能就是我在谷歌中找不到答案的原因。
当代码运行时,currentCardRow 将等于 1,因此它应该是 cardSelected1,这是控制台中显示的内容.log。我需要它更进一步,因为 cardSelected1 是一个变量,我需要它评估控制台日志中的显示为邀请。邀请是 cardSelected1 变量的示例。
我不确定实现这一目标的正确语法是什么。
var currentCardSelected = "cardSelected" + currentCardRow;
感谢您的帮助!
JavaScript 有一个 Eval() 函数,它允许你将字符串评估为 JavaScript 代码。
例如
var bar = "123";
var foo = "bar";
console.log(eval(foo));
将"123"打印到控制台。
有关 eval 的更多信息,您可以查阅 MDN 文档。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval
通常,使用 eval() 被认为是不好的做法,因为它使代码难以阅读。可能有更优雅的解决方案来实现您所描述的内容,但是,eval 将解决您当前的问题。
var currentCardSelected = eval("cardSelected" + currentCardRow);
这就是我的问题的解决方法。
相关文章:
- 将函数的上下文应用于javascript变量
- 无法导出函数expressjs/requestjs中的变量
- Javascript变量评估
- 使用短路评估来定义变量
- Javascript 如何强制将字符串 + 变量评估为变量
- 在Javascript中,有没有办法评估一个变量,该变量可能是函数,也可能不是函数
- 评估不使用变量
- 如何评估潜在未声明变量的属性
- 如何使用 ngRepeat 在范围变量内进行评估
- 做一个“;不存在变量“;评估到“;未定义的“;非严格代码中的值
- Javascript函数评估为变量
- 使用变量评估Bash和mongodb脚本
- 如何评估jQuery append中的javascript变量
- 正则表达式替换won't评估现有变量,返回undefined
- 在casperjs中传递变量等参数进行评估并登录到站点
- 将javascript变量设置为已评估的viewbag表达式
- 为什么悬停在Chrome调试器实际上修改变量,而不是评估表达式
- 在php中回应一个变量会得到一个数字,将变量设置为cookie并评估cookie会得到另一个数字
- 从test.js.erb视图中评估实例变量(在控制器中定义)
- 在将作用域变量传递给ng-show之前,如何评估它