我正在尝试创建一个 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/