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

228
Vistas
¿Cómo puedo crear un objeto sin usar una nueva palabra clave en javascript?

registrador.js

 const { createLogger, format, transports } = require('winston'); class Logger { constructor() { this.logger = createLogger({ transports: new transports.File({ level: 'error', filename: 'error.log', format: format.json(), `` }), }); } logError(err) { this.logger.error(err); } } module.exports = Logger;

Como puede ver, estoy usando el método prototipo. Para no tener que usar un nuevo método para crear objetos. Adjunto los 3 archivos. Solo quiero saber cómo puedo usar el registrador en el archivo user.js sin usar una nueva palabra clave en el archivo logger.js.

usuario.js

 exports.postUser = async (req, res, next) => { try { console.log(`name:${JSON.stringify(req.body)}`) throw new Error('this is an error on the post'); let user = new User({ name: req.body.name, age: parseInt(req.body.age), city: req.body.city, status: 'ACTIVE' }) let savedPost = await user.save(); console.log(`savedPost':${JSON.stringify(savedPost)}`); res.json(savedPost); } catch (err) { console.log(`err:${err.toString()}`) res.status(500).json({ message: err })

aquí quiero llamar al registrador. Para que pueda devolver el método, err, fecha.

 logger.prototype.logError = function() { return (`function:controller.postUser, error:${err.toString()} -method: ${req.method}- body:${JSON.stringify(req.body)} date:${new Date(Date.now()).toUTCString()}`) } };

rutas.js

 const router = require('express').Router(); const { json } = require('body-parser'); const User = require('../models/user'); const controller = require('../controllers/user'); const middle = require('../middleware/middleware') /*routes*/ router.get('/', controller.getUser); router.post('/', middle.verify, controller.postUser); router.put('/:userId', controller.updateUser) router.delete('/:userId', controller.deleteUser); module.exports = router
over 4 years ago · Santiago Trujillo
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