elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [Pregunta]: ¿Como definir variables a través de un for? (javascript)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: ¿Como definir variables a través de un for? (javascript)  (Leído 2,625 veces)
Leguim


Desconectado Desconectado

Mensajes: 719



Ver Perfil
[Pregunta]: ¿Como definir variables a través de un for? (javascript)
« en: 10 Enero 2020, 04:14 am »

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:

Código
  1. var array = ['variable_1', 'variable_2'];
  2.  
  3. for(var i = 0; i < array.length; i++)
  4. {
  5.    var array[i] = i; // La idea es crear la variable "var variable_1 = 0; y var variable_2 = 1;"
  6. }
  7.  


En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.696


🏴 Libertad!!!!!


Ver Perfil WWW
Re: [Pregunta]: ¿Como definir variables a través de un for? (javascript)
« Respuesta #1 en: 10 Enero 2020, 04:40 am »

Basicamnete necesitas sustituir ese arreglo por un objeto y iterar sobre las propiedades del objeto:

Código
  1. var arreglo = {'variable_1': 0, 'variable_2': 0}; //Este "arreglo" realmente es un objeto
  2. var keys =  Object.keys(arreglo);
  3.  
  4. for(var i = 0; i < keys.length; i++)
  5. {
  6.    arreglo[keys[i]] = i;
  7. }
  8. console.log(arreglo);
  9.  

Saludos!


En línea

@XSStringManolo
Hacker/Programador
Colaborador
***
Desconectado Desconectado

Mensajes: 2.397


Turn off the red ligth


Ver Perfil WWW
Re: [Pregunta]: ¿Como definir variables a través de un for? (javascript)
« Respuesta #2 en: 10 Enero 2020, 08:11 am »

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.
Código
  1. for (var i = 0; i < tuArray; ++i) {
  2.  
  3. window[tuArray[i]] = + "valor asignado";
  4.  
  5. }

  
Si necesitas algo más enrevesado o no tienes el objeto window usa eval.
Código
  1. var nombreVar = 'value';
  2.  
  3. for(var i = 1; i < numVarsPorDeclarar; ++i) {
  4.  
  5. eval("var " + tuArray[i] + " = " + "valor asignado " + ";");
  6.  
  7. }
Lo puedes usar directamente desde la barra del navegador convinado con javascript:
« Última modificación: 10 Enero 2020, 08:14 am por @?0!,5^34 » En línea

Mi perfil de patrocinadores de GitHub está activo! Puedes patrocinarme para apoyar mi trabajo de código abierto 💖

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.850



Ver Perfil WWW
Re: [Pregunta]: ¿Como definir variables a través de un for? (javascript)
« Respuesta #3 en: 10 Enero 2020, 11:02 am »

Citar
En 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
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines