Dla wszystkich różnych koncepcji, które obsługują modyfikatory dostępu, takie jak pola, właściwości, metody i klasy, które modyfikatory dostępu są implikowane, jeśli nie zostały określone?
Dla wszystkich różnych koncepcji, które obsługują modyfikatory dostępu, takie jak pola, właściwości, metody i klasy, które modyfikatory dostępu są implikowane, jeśli nie zostały określone?
Odpowiedzi:
Wszystko w a class
jest, public
jeśli nie zostało określone. Wszystko w a module
jest prywatne, chyba że export
użyte jest słowo kluczowe.
default access modifier on member/method not allowed
zaznacz, tslint.json
aby zezwolić na domyślny lub niejawny modyfikator dostępu.
private
?
Nie zgadzam się z tym
Wszystko w klasie jest publiczne, jeśli nie zostanie określone.
Wszystko jest publiczne, nawet jeśli używane jest prywatne. Wystarczy spojrzeć na przetransponowany kod. Prywatne metody z adnotacjami będą dostępne publicznie. Tylko transpiling będzie powodować błędy. Zarówno publiczne, jak i prywatne zostaną przekonwertowane na<Object>.prototype.funcName
which access modifiers are implied when not specified
raczej niż can my code be accessed when an access modifier is not specified
. Modyfikatory dostępu są raczej koncepcją TypeScript niż JavaScript. Myślę więc, że odpowiedź @ basarat dotyczyła tego, co miałem na myśli w pytaniu i wydaje się być poprawna w kontekście pytania. Być może jest miejsce na ujednoznacznienie sformułowania pytania i odpowiedzi.