我正在尝试压缩我的代码,因为我发生了很多重复编码。我需要多次应用这个相同的例子。我想创建一个for循环,但我的变量也需要增加。现在我的变量增加但我无法将我的单元格数据实现到变量中。我想我是双重分配var h。我无法弄清楚如何解决这个问题。谢谢你的帮助。
For Loop
for (var j = 2; j<15; j++){eval("var polebrea" +j);
var h = ("polebrea" +j)
}
h = document.getElementById("part1Table").rows[10].cells[2].innerHTML;
试图实施的代码
polebrea2 = document.getElementById("part1Table").rows[10].cells[2].innerHTML;
polebrea3 = document.getElementById("part1Table").rows[10].cells[3].innerHTML;
polebrea4 = document.getElementById("part1Table").rows[10].cells[4].innerHTML;
polebrea5 = document.getElementById("part1Table").rows[10].cells[5].innerHTML;
(续至15)
插入变量
<script>document.write(polebrea2)</script>
答案 0 :(得分:0)
忽略设计教条....使用属性访问的字符串索引形式来设置变量:
// window is a bad place for this....you should probably put it on another object e.g. var polbreas = {};
for (var i = 2; i<15; i++){
window["polbrea"+i] = document.getElementById("part1Table").rows[10].cells[i].innerHTML;
}
答案 1 :(得分:-2)
虽然做出你正在做的事情不一定是好习惯,你可以试试这个:
var createVariable = function( index ){
var variableName = "polebrea" + index;
var objName = document.getElementById("part1Table").rows[10].cells[index].innerHTML;
return (variableName + " = " + objName + ";");
};
for (var j = 2; j<15; j++){
var objToWrite = createVariable(j);
console.log( objToWrite );
}