Typescript中公共類訪問修飾符的用途是什麼?Typescript中公共類訪問修飾符的用途是什麼?
是什麼
export class Thing {
public doStuff(){}
}
和
export class Thing {
doStuff(){}
}
看來,標準TSC JS輸出是完全一樣的區別...
Typescript中公共類訪問修飾符的用途是什麼?Typescript中公共類訪問修飾符的用途是什麼?
是什麼
export class Thing {
public doStuff(){}
}
和
export class Thing {
doStuff(){}
}
看來,標準TSC JS輸出是完全一樣的區別...
您的示例代碼在TypeScript中的含義完全相同。如果您未在成員定義中加入修飾符public
,private
或protected
,則TypeScript將選擇默認的public
。
這對Javascript沒有意義,因爲TypeScript編譯器會生成完全相同的代碼。但是,這些修改器會幫你封裝類成員,並讓他們:
public
private
在類protected
再次生成的JavaScript不包含修飾符。這意味着,如果有人獲得您的Javascript代碼,即使您將其定義爲private
,它也將訪問成員。修飾符僅在TypeScript中有用,並幫助開發人員不訪問某些類成員。
顯式指定** public **修飾符是否很好? –
它只是設定一個明確的方式該方法是public
。默認情況下,TypeScript中的所有類方法/屬性都是public類型的,但爲了清晰起見,您還可以在代碼中註明這一點。
您可以在Handbook閱讀更多關於它,這裏是摘錄:
公共默認
在我們的例子中,我們已經能夠自由地訪問我們整個聲明的成員我們的計劃。如果您熟悉其他語言的課程,您可能在上面的例子中已經注意到我們不必使用public這個詞來實現這一點;例如,C#要求將每個成員明確標記爲公開以便可見。在TypeScript中,每個成員默認都是公共的。
您仍可以明確地標記成員公衆。
如果您未指定訪問修飾符,則默認爲公共。編譯後的外觀是無關緊要的。你應該知道使用private或protected也會產生完全相同的JavaScript。 – Hampus