javascript - For循环转换一系列变量

标签 javascript arrays loops for-loop

我正在尝试创建一个 for 循环,它执行与此代码完全相同的操作(quests 是一个数组):

Quest0.text = quests[0]
Quest1.text = quests[1]
Quest2.text = quests[2]
Quest3.text = quests[3]
Quest4.text = quests[4]
Quest5.text = quests[5]
Quest6.text = quests[6]
Quest7.text = quests[7]
Quest8.text = quests[8]
Quest9.text = quests[9]
Quest10.text = quests[10]
Quest11.text = quests[11]
Quest12.text = quests[12]
Quest13.text = quests[13]
Quest14.text = quests[14]
Quest15.text = quests[15]

到目前为止,我所得到的就是这个(activeQuests 是数组任务的长度):

var q = 0;
for (q=0; q <= activeQuests; q++) {
    Quest0.text = quests[q]
}

但我不知道如何让它完成剩下的工作。

最佳答案

您可以使用eval,但您可能不应该使用。如果您有如此明显的类似数组的数据并且您正在逐个元素地手动操作,您可能应该重新考虑您的方法。

查看 Marco van Hylckama Vlieg 的这篇博文:"Variable Variables in Javascript" 。相关片段:

...using the fact that all global variables are held in the window array.

var i=1;
window['name' + i] = 'Marco';
document.write('got ' + name1);

There we go! Nice, clean and no eval() necessary."

关于javascript - For循环转换一系列变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8723841/

相关文章:

java - Java 循环的输出?

c++ - while循环后的语句不执行

javascript - 在保留白色的同时对白色使用不透明度

javascript - AJAX 加载和 history.pushState 的推荐顺序是什么?

javascript - 在 shopify 搜索栏中删除冒号搜索运算符

javascript - 为什么它给我这个错误 # Fatal error in , line 0 # Fatal JavaScript invalid size error 169220804?

循环中的 Java 音频文件。不是作为小程序。

javascript - 渲染列表输入中的特定元素 - AngularJS

c++ - 编译时和运行时数组的一个模板类(名称),代码重复很少

Java: '.class' 将数组传递给函数时出现预期错误