Explica este código JavaScript
Dificultad: Básico
Dada la siguiente clase, ¿Cuáles atributos son públicos?
class Dog { #peso; constructor({ color, tamanio, peso=10, cola=true}){ this.color = color; this._tamanio = tamanio; this.#peso = peso; this.cola = cola; } }
A. Todos
B. Ninguno
C. Solo #peso
D. Todos menos #peso
Respuesta en el primer comentario.
Respuesta:
D. Todos menos #peso
Por defecto en JavaScript, todos los atributos de una clase son públicos sin necesidad de usar una sintaxis especial.
Desde ES2020 podemos declarar variables privadas usando #
seguido del nombre del atributo. como por ejemplo #peso
.
Antes de esta sintaxis los programadores se limitaban a usar un _
como en _tamanio
para denotar que esa variable era "privada", pero solo era una convención entre programadores puesto que la variable en si no era privada, solo denotaba serlo.
Top comments (0)