Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

212
Vistas
Cómo fusionar nombres de variables en un nuevo nombre de variable

Intento trabajar con objetos y matrices con fines de localización. Ahora el problema es que requiere mucha codificación para cargar el valor correcto de los objetos 1 por 1.

Como tal, traté de simplificar el proceso creando nombres de variables a partir de otras variables. Por lo tanto, verifico el atributo lang e intento obtener ese valor como parte de otro nombre de variable.

Sin embargo, esto no funciona en absoluto.

Como ejemplo podría tener un objeto var text = { en: 'text', de: 'text' }
Podría hacer cargar el texto correcto usando:

 var language = document.documentElement.lang.toLowerCase(); switch (language) { case 'en': element.innerHTML = text.en; break; case 'de' element.innerHTML = text.de; break; }

Esto será realmente molesto para el código, así que traté de usar los siguientes métodos en su lugar:

 element.innerHTML = text.language; element.innerHTML = `text.${language}`; ...

Nada de esto funciona, por supuesto.

Así que realmente necesito ayuda para encontrar una manera de crear un nombre de variable fusionando diferentes nombres de variables como:

 var a = 'text.'; var b = 'en'; var c = ab; => text.en;

¡Al final, debe reconocerse como un nombre de variable y no como una cadena!

 var text = { en: 'Hello World', de: 'Hallo Welt', es: 'Hola Mundo', it: 'Ciao Mundo', fr: 'Bonjour Le Monde' } /* getting the language of the document */ var language = document.documentElement.lang.toLowerCase(); window.addEventListener('DOMContentLoaded', function() { var ele = document.body; /*does obviosly not work*/ var content = `text.${language}`; ele.innerHTML = content; /*does work*/ console.log(`the set language is: ${language}`); });
 <!DOCTYPE html> <html lang="de" dir="ltr"> <head></head> <body></body> </html>

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

const content = text[language]
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda