循环创建多个变量

时间:2018-03-23 16:27:50

标签: javascript

我想循环创建各种变量以减少代码行。如果我需要创建10个这样的变量:

var par01 = document.createElement("p");
var par02 = document.createElement("p");
var par03 = document.createElement("p");
var par04 = document.createElement("p");
var par05 = document.createElement("p");
var par06 = document.createElement("p");
var par07 = document.createElement("p");
var par08 = document.createElement("p");
var par09 = document.createElement("p");
var par10 = document.createElement("p");

...使用基本的For循环。我似乎在设置方面遇到了一些问题:

for (var loopCounter = 1; loopCounter < 11; loopCounter++) {
    var par[loopCounter] = document.createElement("p"); }

5 个答案:

答案 0 :(得分:1)

在循环之前创建一个数组,然后在循环内用新条目填充它。你想要动态声明,这是一个经典的问题。

var arr = [];
for (var i = 0; i < 11; i++) {
    arr.push( document.createElement("p") );
}

答案 1 :(得分:0)

你最好使用数组而不是做这种东西。

var pCollection =Array();
for (var loopCounter = 1; loopCounter < 11; loopCounter++) {
    pCollection.push(document.createElement("p")); 
}

现在访问你的元素只是迭代数组;

for (var loopCounter = 1; loopCounter < pCollection.length; loopCounter++) {
    var pElement = pCollection[loopCounter] ;
}

答案 2 :(得分:0)

你几乎就在那里,只需在循环之前声明你的数组。您可以像使用计数器一样分配给每个数组项,也可以更容易地使用push()

var par = [];

for (var loopCounter = 1; loopCounter < 11; loopCounter++) {
  par.push(document.createElement("p"));
}

console.log(par.length);

答案 3 :(得分:0)

如果您知道之前的长度,则必须先定义数组,更好(在性能方面)。

var loopCounter, 
    par[] = new Array(11);
for (loopCounter = 0; loopCounter < array.length; loopCounter++) {
    par[loopCounter] = document.createElement("p"); 
}

如果长度是动态的,则可以初始化为空,并使用push()函数添加元素。

答案 4 :(得分:0)

每个array使用pushobject

var pCollection = [];
for (var loopCounter = 0; loopCounter < 10; loopCounter++) {
    pCollection.push(document.createElement("p")); 
}

console.log(pCollection);