Buenas noches,
estoy teniendo serios problemas y es que no puedo lograr definir variables a través de un for en javascript. Lo que hago es:
var array = ['variable_1', 'variable_2'];
for(var i = 0; i < array.length; i++)
{
var array[i] = i; // La idea es crear la variable "var variable_1 = 0; y var variable_2 = 1;"
}
Basicamnete necesitas sustituir ese arreglo por un objeto y iterar sobre las propiedades del objeto:
var arreglo = {'variable_1': 0, 'variable_2': 0}; //Este "arreglo" realmente es un objeto
var keys = Object.keys(arreglo);
for(var i = 0; i < keys.length; i++)
{
arreglo[keys[i]] = i;
}
console.log(arreglo);
Saludos!
En el 99.99% no es necesario declarar variables dinámicamente. Probablemente lo estés haciendo mal.
Las variables son propiedades del objeto window en el navegador. Con la sintaxis del operador array puedes definir una propiedad a la que acceder directamente por su nombre. Al igual que no haces window.alert() y haces alert() llanamente.
for (var i = 0; i < tuArray; ++i) {
window[tuArray[i]] = + "valor asignado";
}
Si necesitas algo más enrevesado o no tienes el objeto window usa eval.
var nombreVar = 'value';
for(var i = 1; i < numVarsPorDeclarar; ++i) {
eval("var " + tuArray[i] + " = " + "valor asignado " + ";");
}
Lo puedes usar directamente desde la barra del navegador convinado con javascript:
CitarEn el 99.99% no es necesario declarar variables dinámicamente. Probablemente lo estés haciendo mal.
This. Es una práctica muy muy shady. A nivel del uso de goto en ciertos lenguajes.
Saludos