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

158
Vistas
herencia concatenativa dos métodos con la misma firma

El siguiente código imprime solo el contenido del evento, ¿cómo hago para que se imprima el número de WheatherData.value? Vengo de Java y estoy acostumbrado a hacerlo de esta manera.

 const Event = (time, place) => { var _time = time var _place = place return { getTime() { return _time }, getPlace() { return _place }, updateTime() { _time = new Date(Date.now()) }, toString() { return 'Time: ' + _time + '\nPlace: ' + _place } } } const WeatherData = (value, time, place) => { var _event = Event(time, place) var _value = value const getValue = () => { return _value } const toString = () => { return '\nValue: ' + _value + _event.toString() } return Object.assign({ getValue, toString }, _event) } const wd = WeatherData(10.1, new Date(Date.now()), 'Chisinau, Moldova') console.log(wd.toString()) //Time: Sat Sep 18 2021 08:49:10 GMT+0200 (Central European Summer Time) //Place: Chisinau, Moldova // no value printed

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

0

return Object.assign({ getValue, toString }, _event)

La línea de arriba que causa el problema. Cuando asigna el objeto _event al objeto { getValue, toString } simplemente está anulando el método toString de la función WeatherData . En su lugar, simplemente devuelva { getValue, toString } desde su función WeatherData , como se muestra a continuación;

 const WeatherData = (value, time, place) => { var _event = Event(time, place); var _value = value const getValue = () => { return _value } const toString = () => { return '\nValue: ' + _value + '\n' + _event.toString() } return { getValue, toString } }
about 4 years ago · Juan Pablo Isaza Denunciar

0

return Object.assign({}, _event, { getValue, setValue, toString })

esto funciona para mí, ¿es la forma correcta de hacerlo? Sobrescribo el método toString del event de esta manera

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