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

175
Vistas
¿Cómo nos permite la palabra clave privada declarar e inicializar una instancia de clase?

Estoy leyendo la documentación de Nest.js y hay una línea que no entiendo bien.

Personalizamos nuestro CatsController usando su función de constructor, de modo que cuando el contenedor IoC crea la instancia de catsController, se crea con una instancia de catsService como parámetro de construcción. Al menos esta es mi mejor suposición basada en todo el documento. Pero, ¿qué significa exactamente lo siguiente:

Observe el uso de la sintaxis private . Esta forma abreviada nos permite declarar e inicializar el miembro catsService inmediatamente en la misma ubicación.

¿Por qué la palabra clave privada logra eso? ¿Cómo se vería si no usáramos la sintaxis abreviada?

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

0

Nest.js realiza la inicialización de CatsService en ambos casos, esa es una de las premisas clave del IoC en el que se basa. El uso de la palabra clave private en la declaración del constructor es completamente opcional y es útil para convertir el parámetro del constructor en un atributo de CatsController durante su inicialización. Sin él, debe escribir:

 @Controller('cats') export class CatsController { private catsService: CatsService; constructor(service: CatsService) { this.catsService = service; } /* TODO */ }

Observe cómo aparece la palabra clave private para declarar catsService como un atributo privado de la clase, y si la usáramos dentro de la declaración del parámetro del constructor, tendría el mismo significado, lo que daría como resultado un código más pequeño y simple. Por último, esta es una característica sintáctica de Typescript y no tiene relación con NestJS o DI.

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