千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > 15 種TypeScript最常用的實(shí)用程序類型

15 種TypeScript最常用的實(shí)用程序類型

來(lái)源:千鋒教育
發(fā)布人:wjy
時(shí)間: 2022-11-16 14:20:06 1668579606

  我們?cè)谑褂?TypeScript 的過(guò)程中,我們是面向類型編程的,為了滿足不同的工作場(chǎng)景,我們需要對(duì)已知類型進(jìn)行改造。

  為了方便 TypeScript 用戶,TypeScript 開(kāi)發(fā)團(tuán)隊(duì)為我們提供了許多有用的內(nèi)置實(shí)用程序類型。

  通過(guò)這些實(shí)用類型,我們可以輕松地轉(zhuǎn)換類型、提取類型、排除類型,或者獲取函數(shù)的參數(shù)類型或返回值類型。

  在本文中,我從 TypeScript 的內(nèi)置實(shí)用程序類型中挑選了 15 種非常有用的類型,并以圖像的形式介紹了它們的用法和內(nèi)部工作原理,看完這篇文章,相信你可以真正掌握這些內(nèi)置實(shí)用程序類型的用法。

  1.Partial

  構(gòu)造一個(gè)類型,其中 Type 的所有屬性都設(shè)置為可選。

15 種TypeScript最常用的實(shí)用程序類型1

15 種TypeScript最常用的實(shí)用程序類型2

15 種TypeScript最常用的實(shí)用程序類型3

  2.Required

  構(gòu)造一個(gè)類型,該類型由設(shè)置為 required Type 的所有屬性組成,部分的反義詞。

15 種TypeScript最常用的實(shí)用程序類型4

15 種TypeScript最常用的實(shí)用程序類型5

15 種TypeScript最常用的實(shí)用程序類型6

  3.Readonly

  構(gòu)造一個(gè) Type 的所有屬性都設(shè)置為 readonly 的類型,這意味著構(gòu)造類型的屬性不能被重新分配。

15 種TypeScript最常用的實(shí)用程序類型7

15 種TypeScript最常用的實(shí)用程序類型8

15 種TypeScript最常用的實(shí)用程序類型9

  4.Record<keys, type="">

  構(gòu)造一個(gè)對(duì)象類型,其屬性鍵為 Keys,其屬性值為 Type,此實(shí)用程序可用于將一種類型的屬性映射到另一種類型。

15 種TypeScript最常用的實(shí)用程序類型10

15 種TypeScript最常用的實(shí)用程序類型11

  5.Exclude<uniontype, excludedmembers="">

  通過(guò)從 UnionType 中排除可分配給 ExcludedMembers 的所有聯(lián)合成員來(lái)構(gòu)造類型。

15 種TypeScript最常用的實(shí)用程序類型12

15 種TypeScript最常用的實(shí)用程序類型13

15 種TypeScript最常用的實(shí)用程序類型14

  6.Extract<type, union="">

  通過(guò)從 Type 中提取所有可分配給 Union 的聯(lián)合成員來(lái)構(gòu)造一個(gè)類型。

15 種TypeScript最常用的實(shí)用程序類型15

15 種TypeScript最常用的實(shí)用程序類型16

15 種TypeScript最常用的實(shí)用程序類型17

  7.Pick<type, keys="">

  通過(guò)從 Type 中選擇一組屬性 Keys(字符串文字或字符串文字的聯(lián)合)來(lái)構(gòu)造一個(gè)類型。

15 種TypeScript最常用的實(shí)用程序類型18

15 種TypeScript最常用的實(shí)用程序類型19

15 種TypeScript最常用的實(shí)用程序類型20

  8.Omit<type, keys="">

  通過(guò)從 Type 中選擇所有屬性然后刪除 Keys(字符串文字或字符串文字的聯(lián)合)來(lái)構(gòu)造一個(gè)類型。

15 種TypeScript最常用的實(shí)用程序類型21

15 種TypeScript最常用的實(shí)用程序類型22

15 種TypeScript最常用的實(shí)用程序類型23

  9.NonNullable

  通過(guò)從 Type 中排除 null 和 undefined 來(lái)構(gòu)造一個(gè)類型。

15 種TypeScript最常用的實(shí)用程序類型24

15 種TypeScript最常用的實(shí)用程序類型25

  10.Parameters

  從函數(shù)類型 Type 的參數(shù)中使用的類型構(gòu)造元組類型。

15 種TypeScript最常用的實(shí)用程序類型26

15 種TypeScript最常用的實(shí)用程序類型27

  11.ReturnType

  構(gòu)造一個(gè)由函數(shù) Type 的返回類型組成的類型。

15 種TypeScript最常用的實(shí)用程序類型28

15 種TypeScript最常用的實(shí)用程序類型29

  12.Uppercase

  將字符串文字類型轉(zhuǎn)換為大寫(xiě)。

15 種TypeScript最常用的實(shí)用程序類型30

  13.小寫(xiě)

  將字符串文字類型轉(zhuǎn)換為小寫(xiě)。

15 種TypeScript最常用的實(shí)用程序類型31

  14.大寫(xiě)

  將字符串文字類型的第一個(gè)字符轉(zhuǎn)換為大寫(xiě)。

15 種TypeScript最常用的實(shí)用程序類型32

  15.取消大寫(xiě)

  將字符串文字類型的第一個(gè)字符轉(zhuǎn)換為小寫(xiě)。

15 種TypeScript最常用的實(shí)用程序類型33

  除了上述這些實(shí)用程序類型之外,還有一些其他常用的 TypeScript 內(nèi)置實(shí)用程序類型,具體如下:

  ConstructorParameters:根據(jù)構(gòu)造函數(shù)類型的類型構(gòu)造元組或數(shù)組類型。它產(chǎn)生一個(gè)包含所有參數(shù)類型的元組類型(如果 Type 不是函數(shù),則類型 never )。

  InstanceType:構(gòu)造一個(gè)由Type中構(gòu)造函數(shù)的實(shí)例類型組成的類型。

  ThisParameterType:為函數(shù)類型提取此參數(shù)的類型,如果函數(shù)類型沒(méi)有此參數(shù),則為未知。

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
為什么SpringBoot的 jar 可以直接運(yùn)行?

一、JAR文件的結(jié)構(gòu)與執(zhí)行方式Spring Boot的JAR包是Java Archive的縮寫(xiě),它是一種壓縮文件格式,可以將Java項(xiàng)目的類文件、資源文件以及依賴庫(kù)等...詳情>>

2023-10-14 23:01:49
站群服務(wù)器是什么?

站群服務(wù)器的含義與用途站群服務(wù)器主要用于支持站群,即由一組相互鏈接的網(wǎng)站組成的群體。這些網(wǎng)站通常由同一組織或個(gè)人擁有,并且經(jīng)常會(huì)互相鏈...詳情>>

2023-10-14 22:46:12
自編碼器是什么?

一、自編碼器原理自編碼器的設(shè)計(jì)靈感源于神經(jīng)科學(xué)中關(guān)于感知系統(tǒng)的認(rèn)知原理,它的核心思想是將輸入數(shù)據(jù)經(jīng)過(guò)編碼過(guò)程,形成一個(gè)隱藏層的特征表示...詳情>>

2023-10-14 22:41:10
什么是云網(wǎng)融合?

一、云網(wǎng)融合的定義云網(wǎng)融合是指將云計(jì)算與網(wǎng)絡(luò)技術(shù)相結(jié)合,實(shí)現(xiàn)資源的共享、業(yè)務(wù)的協(xié)同,將網(wǎng)絡(luò)與云端服務(wù)深度融合,提供更靈活、高效、安全的...詳情>>

2023-10-14 22:31:47
什么是setnx、Redlock、Redisson?

一、setnxsetnx是Redis中的一個(gè)命令,用于將鍵值對(duì)(key-value)設(shè)置到Redis數(shù)據(jù)庫(kù)中。其中,setnx表示”Set if Not Exists”,即當(dāng)...詳情>>

2023-10-14 22:22:53