Pour tous les différents concepts prenant en charge les modificateurs d'accès, tels que les champs, les propriétés, les méthodes et les classes, quels modificateurs d'accès sont impliqués s'ils ne sont pas spécifiés?
Pour tous les différents concepts prenant en charge les modificateurs d'accès, tels que les champs, les propriétés, les méthodes et les classes, quels modificateurs d'accès sont impliqués s'ils ne sont pas spécifiés?
Réponses:
Tout dans a class
est public
sinon spécifié. Tout dans a module
est privé à moins que le export
mot clé ne soit utilisé.
default access modifier on member/method not allowed
Cochez tslint.json
pour autoriser le modificateur d'accès par défaut ou implicite.
private
?
Je ne suis pas d'accord que
Tout dans une classe est public s'il n'est pas spécifié.
Tout est public, même si privé est utilisé. Regardez simplement le code transpilé. Les méthodes annotées privées seront accessibles au public. Seul le transpiling provoquera des erreurs. Le public et le privé seront convertis en<Object>.prototype.funcName
which access modifiers are implied when not specified
plutôt que can my code be accessed when an access modifier is not specified
. Les modificateurs d'accès sont un concept TypeScript plutôt qu'un concept JavaScript. Je pense donc que la réponse de @ basarat a répondu à ce que je voulais dire dans la question et semble être correcte dans le contexte de la question. Peut-être y a-t-il lieu de lever l'ambiguïté du libellé de la question et de la réponse.