JavaScript: динамическое создание переменных для циклов
Как я могу использовать цикл for для динамического создания переменных и возвращаться.
function createVariables()
{
for ( i=0; i<=20; i++ )
{
var account = i;
return var account + i;
}
}
Цель состоит в следующем:
var account1;
var account2;
var account3; and etc.....
Ответы
Ответ 1
Вы должны использовать массив:
function createVariables(){
var accounts = [];
for (var i = 0; i <= 20; ++i) {
accounts[i] = "whatever";
}
return accounts;
}
После этого у вас есть доступ к accounts[0]
через accounts[20]
.
Ответ 2
Единственный способ, которым я знаю, как это сделать, - использовать функцию JavaScript eval
.
Что-то вроде eval("account" + 1 + "='some value'");
http://www.w3schools.com/jsref/jsref_eval.asp
Однако, я думаю, что @Domenic имеет лучший ответ.
Ответ 3
function createVariables() {
var accounts = [];
for (var i = 0; i <= 20; ++i) {
accounts[i] = "merhaba" + i;
}
return accounts;
}
Ответ 4
Я не был уверен в ответе на старый вопрос, однако я наткнулся на это, ища ответ самостоятельно.
for (var i = 1; i < 11; i++) { // Creating 10 objects
window["Object"+i] = new Object();
}
console.log(Object7); // is not undefined
Вышеприведенный код зацикливается до 10 при создании динамических объектов, как описано в https://www.codecademy.com/en/forum_questions/51068e93f73ad4947a005629