最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

TypeScript中使用類型斷言的幾種方式分享

 更新時間:2023年09月18日 09:56:43   作者:思路大于開發(fā)  
在TypeScript中,類型斷言用于告訴編譯器某個變量的類型,這在我們確定變量的類型比編譯器更準(zhǔn)確時非常有用,本文給大家分享了幾種TypeScript中使用類型斷言方式,需要的朋友可以參考下

正文

  • 為什么需要類型斷言

盡管類型推斷很智能,但同時也很死板,不懂得變通。如果嚴(yán)格按照推斷來定義類型可能會讓開發(fā)者付出一些額外的卻有不必要的工作與精力。事實(shí)上,開發(fā)者在不犯錯的情況下,往往比編譯器更清楚自己想要的類型,因此需要一種手段來繞過默認(rèn)的推導(dǎo)行為

  • 如何斷言

1.as

通過as關(guān)鍵字,可以強(qiáng)制將一個類型斷言為另一個類型。如下,將Ani斷言為Spp

2.as const

TypeScript中,let聲明的變量具有更寬泛的類型推導(dǎo)

const則范圍更小

下邊是一個與聯(lián)合類型結(jié)合使用的例子。由于s表示的是一個更寬泛的number類型,number又是1|2的父類型,從而產(chǎn)生報錯

此時,只需要將s替換為ss,由于ss表示的是子類型,根據(jù)協(xié)變特性,子類型可以代替父類型使用

3.非空斷言

當(dāng)我們明確在一定條件下,某個對象的某個key一定存在時,可以通過!進(jìn)行標(biāo)記

  • 斷言的條件

斷言與any不同,它必須在一定的條件和范圍內(nèi)才能實(shí)現(xiàn)類型的互換,如下,兩個不相干的類型之間無法斷言

斷言的前提條件是兩個類型之間存在父子關(guān)系,能夠產(chǎn)生協(xié)變或者逆變

  • 超越斷言規(guī)則的斷言

由于unknowany的子類型,而any又是任意類型的父類型,因此通過此中轉(zhuǎn),可以完成任意類型的斷言轉(zhuǎn)換

如果本文對您有用,希望能得到您的點(diǎn)贊和收藏

到此這篇關(guān)于TypeScript中使用類型斷言的幾種方式分享的文章就介紹到這了,更多相關(guān)TypeScript類型斷言的使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • webpack3升級到webpack4遇到問題總結(jié)

    webpack3升級到webpack4遇到問題總結(jié)

    這篇文章主要介紹了webpack3升級到webpack4遇到問題總結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • 使用正則替換變量

    使用正則替換變量

    使用正則替換變量...
    2007-05-05
  • js大數(shù)相加出現(xiàn)精度丟失、運(yùn)算錯誤的問題

    js大數(shù)相加出現(xiàn)精度丟失、運(yùn)算錯誤的問題

    js中數(shù)字類型長度達(dá)到16位時,進(jìn)行加減乘除運(yùn)算,會出現(xiàn)精度丟失,運(yùn)算結(jié)果錯誤的問題,本文講述精度丟失的原因及解決辦法
    2023-08-08
  • 詳解webpack進(jìn)階之loader篇

    詳解webpack進(jìn)階之loader篇

    本篇文章主要介紹了詳解webpack進(jìn)階之loader篇,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • JS簡單實(shí)現(xiàn)tab切換效果的多窗口顯示功能

    JS簡單實(shí)現(xiàn)tab切換效果的多窗口顯示功能

    這篇文章主要介紹了JS簡單實(shí)現(xiàn)tab切換效果的多窗口顯示功能,可實(shí)現(xiàn)響應(yīng)鼠標(biāo)事件的文字切換顯示效果,涉及javascript頁面元素遍歷與樣式變換相關(guān)操作技巧,需要的朋友可以參考下
    2016-09-09
  • 利用JS實(shí)現(xiàn)窗口最大化和最小化效果

    利用JS實(shí)現(xiàn)窗口最大化和最小化效果

    在現(xiàn)代 Web 開發(fā)中,JavaScript 提供了多種方法來與瀏覽器窗口進(jìn)行交互,包括最大化和最小化瀏覽器窗口,雖然瀏覽器通常會限制對窗口尺寸的直接控制,但我們依然可以實(shí)現(xiàn)一些常見的行為,本文將探討如何使用 JavaScript 實(shí)現(xiàn)窗口的最大化和最小化效果
    2024-12-12
  • layui form.render(''select'', ''test2'') 更新渲染的方法

    layui form.render(''select'', ''test2'') 更新渲染的方法

    今天小編就為大家分享一篇layui form.render('select', 'test2') 更新渲染的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • 光標(biāo)的一些操作總結(jié)

    光標(biāo)的一些操作總結(jié)

    IE下的Range操作比Mozilla下強(qiáng)很多,這里只討論IE下的操作,這里選介紹幾個光標(biāo)定位的特點(diǎn)
    2006-10-10
  • 在element-ui的select下拉框加上滾動加載

    在element-ui的select下拉框加上滾動加載

    這篇文章主要介紹了在element-ui的select下拉框加上滾動加載,本文以以element-ui中的select為例,給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2019-04-04
  • JavaScript和jQuery制作光棒效果

    JavaScript和jQuery制作光棒效果

    本文主要介紹了使用javaScript和jQuery制作光棒效果的示例代碼,具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02

最新評論

怀柔区| 监利县| 保靖县| 鄂托克旗| 合水县| 义马市| 义马市| 怀安县| 罗江县| 东兴市| 错那县| 南乐县| 通榆县| 扶沟县| 铁力市| 临武县| 崇左市| 昭苏县| 东乡族自治县| 界首市| 阿拉善左旗| 丁青县| 平原县| 合作市| 莎车县| 兴化市| 黎川县| 商水县| 辛集市| 泰安市| 察雅县| 莒南县| 依安县| 屏南县| 泊头市| 阿克陶县| 瑞昌市| 图木舒克市| 永善县| 澄城县| 连州市|