typescript的let,any

自動類型不是任意類型,是通過對右側數值/對象類型分析來賦給左側類型值。

let a = 123;
let b = a;

a自動被賦予了數值類型,所以a為number類型
b被賦予和a相同的值,b設置為a的類型,也就是number

let b;

如果直接設置b并且不賦值,則b為any類型。在開發中盡量避免any類型,因為這個類型對各種操作都在編譯時報錯,只能在運行時報錯,這樣就很難發現某個小角落的錯誤。

你可以用繼承或者接口的方式來容納一個多變的對象,如果實在需要用到any,則最好在傳遞結束后,將對象的類型強制轉換為邏輯類型

function doSome(obj:any){
  let b = <number>obj;
}

ts中的let和c++中的auto基本用法一致,都是通過對右側值或者對象的類型來賦于類型的。c++中的void和any用法類似,但c++中用void會更加危險,風險更大。在obj-c中對應let的是id,用法也相同。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Lua 5.1 參考手冊 by Roberto Ierusalimschy, Luiz Henrique de F...
    蘇黎九歌閱讀 13,878評論 0 38
  • 1.埋點是做什么的 2.如何進行埋點 3.埋點方案的設計 近期常被問到這個問題,我擔心我的答案會將一些天真爛漫的孩...
    lxg閱讀 2,028評論 0 1
  • 1.ios高性能編程 (1).內層 最小的內層平均值和峰值(2).耗電量 高效的算法和數據結構(3).初始化時...
    歐辰_OSR閱讀 29,547評論 8 265
  • 李根兒趁著機器檢修的功夫,從流水線上下來喘口氣兒。顧不得臟了吧唧的手,邊煩躁的耙了耙頭發,邊胡思亂想著,從褲兜里掏...
    叢銘閱讀 1,543評論 30 35
  • 從開學第一天我的心里就在忐忑,又開始了每天晚上大呼小叫的讓兒子寫作業的時刻了!然而這幾天的但心有點多余了。就拿今天...
    美女瞳閱讀 189評論 0 2