91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

TypeScript中實用類型有哪些

發布時間:2022-03-29 09:19:40 來源:億速云 閱讀:137 作者:小新 欄目:web開發

這篇文章給大家分享的是有關TypeScript中實用類型有哪些的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

實用類型

TypeScript 原生提供了幾個有用的實用類型來幫助我們進行一些常見的類型轉換。這些實用類型是全局可用的,它們都使用了泛型。

下面這7個是我經常用到的。

1. Pick<Type, Keys>

Pick會從 Type 中挑選屬性集 Keys 來創建一個新的類型,Keys 可以是一個字符串字面或字符串字面的聯合。Keys 的值必須是 Type 的鍵,否則TypeScript編譯器會抱怨。當你想通過從有很多屬性的對象中挑選某些屬性來創建更輕的對象時,這個實用類型特別有用。

type User = {
  name: string
  age: number
  address: string
  occupation: string
}

type BasicUser = Pick<User, "name" | "age">

// type BasicUser = {
//   name: string;
//   age: number;
// }

2. Omit<Type, Keys>

OmitPick相反。 Keys 不是說要保留哪些屬性,而是指要省略的屬性鍵集。 當我們只想從對象中刪除某些屬性并保留其他屬性時,這個會更有用。

type User = {
  name: string
  age: number
  address: string
  occupation: string
}

type BasicUser = Omit<User, "address" | "occupation">

// type BasicUser = {
//   name: string;
//   age: number;
// }

3. Partial<Type>

Partial 構造了一個類型,其所有的類型屬性都設置為可選。當我們在編寫一個對象的更新邏輯時,這個可能非常有用。

type User = {
  name: string
  age: number
  address: string
  occupation: string
}

type PartialUser = Partial<User>

// type PartialUser = {
//   name?: string;
//   age?: number;
//   address?: string;
//   occupation?: string;
// }

4. Required<Type>

RequiredPartial相反。它構造了一個類型的所有屬性都是必填的類型。它可以被用來確保在一個類型中沒有可選屬性出現。

type PartialUser = {
  name: string
  age: number
  address?: string
  occupation?: string
}

type User = Required<PartialUser>

// type User = {
//   name: string;
//   age: number;
//   address: string;
//   occupation: string;
// }

5. Readonly<Type>

Readonly 構建了一個類型,其類型的所有屬性被設置為只讀。重新分配新的值 TS 就會報錯。

type User = {
  name: string
  age: number
  address: string
  occupation: string
}

type ReadOnlyUser = Readonly<User>

const user: ReadOnlyUser = {
  name: "小智",
  age: 24,
  address: "廈門",
  occupation: "大遷世界"
}

user.name = "王大冶"
// Cannot assign to 'name' because it is a read-only property.

6. ReturnType<Type>

ReturnType 從一個函數類型的返回類型構建一個類型。當我們處理來自外部庫的函數類型并希望基于它們建立自定義類型時,它是非常有用的。

import axios from 'axios'

type Response = ReturnType<typeof axios>

function callAPI(): Response{
  return axios("url")
}

感謝各位的閱讀!關于“TypeScript中實用類型有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

屏山县| 遂昌县| 龙泉市| 福清市| 无棣县| 东乌珠穆沁旗| 安徽省| 阿尔山市| 永州市| 八宿县| 凉城县| 渝中区| 炎陵县| 龙江县| 厦门市| 昌乐县| 昭通市| 温宿县| 临洮县| 噶尔县| 绿春县| 芦山县| 临澧县| 奉贤区| 沧州市| 达尔| 三亚市| 贵州省| 紫金县| 定陶县| 营口市| 久治县| 黎川县| 那曲县| 龙岩市| 乐东| 淄博市| 马尔康县| 锡林浩特市| 长武县| 桐庐县|