0
var greentext='shopping';
var colors=new Array('green','blue','red','violet','brown');
for(i=0;i<colors.length;i++)
{
 //suppose consider colors[i] is green
}

当使用 连接colors[i]+'text'并传递给某个 div时innerHTML,传递的是字符串   "greentext"  而不是连接字符串的值"shopping"。如何像上面那样传递动态创建的字符串的值?

希望我的问题很清楚.....请帮助我

4

1 回答 1

3

我会完全不同:

  var text = {
    green: 'shopping',
    blue: 'contemplating infinity',
    red: 'cooking beans',
    violet: 'writing poetry'
  };

  var colors = ['green', 'blue', 'red', 'violet' ];
  for (var i = 0; i < colors.length; ++i) {
    alert( text[ colors[i] ] );
  }

结构化数据最好用您使用的任何编程语言的实际结构来表示。JavaScript 足够灵活,您可以“构造”变量名,但它不是惯用的。在这里,我制作了一个简单的对象,其属性与您的颜色相对应。

于 2012-07-08T13:35:15.890 回答