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

139
Vistas
Plantilla de literales en métodos en objetos Javascript

Tengo un problema al intentar consolar. registrar un literal de plantilla. Como puede ver a continuación, tengo un objeto simple de Samsung, que tiene un método en el que se enciende e imprime la plantilla literal en la consola.

 let samsung = { model: "S21", camera: "48px", processor: "Snapdragon888", turnOn: function(model, camera, processor) { console.log( `I have turned on! I am the ${model}, I have a ${camera} camera and a ${processor} processor` ); }, }; console.log(samsung.turnOn());

Lo probé de muchas maneras diferentes, usando funciones de flecha, usando el operador "esto", agregando/eliminando parámetros de la función, poniendo "Samsung" en lugar de "esto", etc. Pero imprime lo siguiente sin importar qué : I have turned on! I am the ${model}, I have a ${camera} camera and a ${processor} processor

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

0

No pasó ningún parámetro a la función, por lo que están undefined de forma predeterminada.

Si desea obtener el valor de propiedad del objeto, use this para hacer referencia al objeto:

 let samsung = { model: "S21", camera: "48px", processor: "Snapdragon888", turnOn: function() { console.log( `I have turned on! I am the ${this.model}, I have a ${this.camera} camera and a ${this.processor} processor` ); }, }; console.log(samsung.turnOn());

about 4 years ago · Juan Pablo Isaza Denunciar

0

Solo para que entiendas la situación:

this se puede usar para hacer referencia al objeto actual para un alcance de ejecución, en el caso de su muestra, es el objeto que definió.

El uso de esa palabra clave le permite acceder a cualquier método ( this.turnOn() ) o propiedad ( this.camera ) que tenga disponible.

Una precaución al usar funciones de flecha es que this perderá su valor, así que tenga cuidado al usar qué sintaxis para definir sus métodos.

En su caso, podría haber funcionado si definió la función fuera del objeto y simplemente pasó cada parámetro por separado usando el . operador.

 const turnOn = (model, camera, processor) => { console.log( `I have turned on! I am the ${model}, I have a ${camera} camera and a ${processor} processor` ); }; turnOn(object.model, object.camera, object.processor);

O usando this con el método definido dentro del objeto para hacer referencia a cada propiedad.

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