3
var temp = new foo();
temp.bar = 'abc';
var temp = new foo();
temp.bar = 'abc';
bar: string
は、public bar: string
と100%等価です。デフォルトのアクセシビリティ修飾子はpublic
です。
private
はコンパイル時プライバシーのみです。実行時の強制はありません。また、発行されたコードはアクセス修飾子に関係なく同一です。クラスの外からプロパティにアクセスしようとすると、TypeScriptのエラーが表示されます。
protected
と言うこともできます。これは、private
のようなものですが、派生したクラスもメンバーにアクセスできる点が異なります。ここでも、発行されたJavaScriptには違いはありません。
howcome私はwebstormにエラーメッセージが表示されません。これには特別な設定が必要ですか? – runtimeZero