0

需要一个正确的解决方案如何编写这个表达式。

var ary1 = ["","",""];
var ary2 = ["","",""];
var ary3 = ["","",""];
var ary4 = ["","",""];
var div;
for(var i=1; i<5; i++){
    div += ("<p id='text'"+i+">"+(ary+i)[0]+"</p>");
}

只是寻找一个更好的解决方案来使它工作。没有从 ary1、ary2、ary3 和 ary4 获得价值。

4

4 回答 4

3

如果您想以这种方式引用不同的数组,将它们存储在一个对象中将是一个非常优雅的解决方案。

var arrayDictionary = {
  ary1: ["","",""],
  ary2: ["","",""],
  ary3: ["","",""],
  ary4: ["","",""]
};
for(var i=1; i<5; i++){
    div += ("<p id='text'"+i+">"+ arrayDictionary["ary"+i][0]+"</p>");
}
于 2013-10-16T17:35:22.210 回答
0
var ary1 = ["","",""];
var ary2 = ["","",""];
var ary3 = ["","",""];
var ary4 = ["","",""];
var div;
for(var i=1; i<5; i++){
    div += ("<p id='text'"+i+">"+eval('ary'+i '[0]')+"</p>");
}
于 2013-10-16T17:35:40.513 回答
0

尝试一组数组:

ary = [
  ["","",""],
  ["","",""],
  ["","",""],
  ["","",""]
];

var div = '';
for (var i = 0, len = ary.length; i < len; i++) {
    div += "<p id='text'" + i + ">" + ary[i][0] + "</p>";
}
于 2013-10-16T17:37:25.057 回答
0

为什么不使用二维数组?

    arr=[ary1,ary2,ary3,ary4,ary5];

for(var i=1; i<arr.legnth; i++){
  for (var j=1;j<arr[i].length;j++){
    div += ("<p id='text'"+j+">"+arr[i][j]+"</p>");
  }
}
于 2013-10-16T17:38:55.363 回答