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 classjest, publicjeśli nie zostało określone. Wszystko w a modulejest prywatne, chyba że exportużyte jest słowo kluczowe.
default access modifier on member/method not allowed zaznacz, tslint.jsonaby 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 specifiedraczej 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.