Maison  >  Article  >  interface Web  >  Dans quelle mesure les membres privés de TypeScript sont-ils privés ?

Dans quelle mesure les membres privés de TypeScript sont-ils privés ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-02 16:25:29312parcourir

 How Private are TypeScript's Private Members?

Résoudre le mystère des membres privés dans TypeScript

L'implémentation des membres privés de TypeScript a été un sujet de perplexité pour de nombreux développeurs. Malgré la restriction d'IntelliSense sur l'accès aux membres privés, les membres restent accessibles en JavaScript pur. Cela soulève des questions sur la mise en œuvre des membres privés de TypeScript.

La nature énigmatique des membres privés

Pour comprendre les membres privés de TypeScript, il est crucial de comprendre que l'application de la confidentialité est limitée. au compilateur. Bien qu'un membre privé déclaré soit implémenté en tant que propriété régulière, il est interdit au code extérieur à la classe d'y accéder.

L'illusion de la véritable confidentialité

Si l'intention est de pour garantir une confidentialité totale, une approche différente est nécessaire. Au lieu de définir la propriété privée en tant que membre de classe, elle doit être déclarée en tant que variable locale dans la portée d'une fonction dans le code de création de l'objet. Cela empêche l'accès à la propriété en tant que membre de classe à l'aide du mot-clé "this".

En résumé, bien que TypeScript fournisse une notion de membres privés, leur confidentialité n'est appliquée qu'au sein du compilateur. Les propriétés véritablement privées doivent être déclarées en tant que variables locales dans le code de création de l'objet, empêchant l'accès à l'aide du mot-clé "this".

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn