この記事では、知っておくべき TypeScript の 7 つのメソッドを紹介します。お役に立てれば幸いです。
#TypeScript の型システムは非常に強力です。これはタイプ セーフティを提供します。型システムは愛されていますが、型とインターフェイスを計画および設計しないと、コードが乱雑で読みにくくなる可能性もあります。
コードの重複を避け、再利用可能な型を作成することは、簡潔なコードを作成する際の重要な部分です。ジェネリックは、再利用可能な型を作成できるようにする TypeScript の機能です。次の例を見てください。
type Add= (a: T, b: T) => T const addNumbers: Add = (a, b) => { return a + b } const addStrings: Add = (a, b) => { return a + b }
正しい型をAdd
のジェネリック型に入力します。これは、2 つの数値の加算または 2 つの文字列の連結を記述するために使用できます。関数ごとに型を記述する代わりに、ジェネリックを使用してそれを 1 回行うだけで済みます。これにより、労力が節約されるだけでなく、コードがよりクリーンになり、エラーが発生しにくくなります。
TypeScript は、一般的な型変換の実行に役立ついくつかの便利なユーティリティ タイプをネイティブに提供します。これらのユーティリティ タイプはグローバルに利用でき、すべてジェネリックを使用します。
私がよく使うのは以下の7つです。
1.Pick
Pick
は、Type から属性セット Keys を選択して、新しいタイプのキーは、文字列リテラルまたは文字列リテラルの結合にすることができます。 Keys の値は Type のキーである必要があります。そうでない場合は、TypeScript コンパイラーからエラーが発生します。このユーティリティ タイプは、多くのプロパティを持つオブジェクトから特定のプロパティを選択して、より軽量なオブジェクトを作成する場合に特に便利です。
type User = { name: string age: number address: string occupation: string } type BasicUser = Pick// type BasicUser = { // name: string; // age: number; // }
2.Omit
Omit
はPick## の逆です。 #。
キーこれは、どの属性を保持するかということではなく、省略する属性キーのセットを意味します。これは、オブジェクトから特定のプロパティを削除し、他のプロパティを保持したい場合に便利です。
type User = { name: string age: number address: string occupation: string } type BasicUser = Omit// type BasicUser = { // name: string; // age: number; // }
3.Partial
Partialすべての型属性セットを使用して型を構築することはオプションです。これは、オブジェクトの更新ロジックを作成するときに非常に役立ちます。
type User = { name: string age: number address: string occupation: string } type PartialUser = Partial// type PartialUser = { // name?: string; // age?: number; // address?: string; // occupation?: string; // }
4.Required
は、Partial
の逆です。すべてのプロパティが必要な型を構築します。これを使用すると、型にオプションのプロパティが存在しないことを確認できます。type PartialUser = { name: string age: number address?: string occupation?: string } type User = Required<PartialUser> // type User = { // name: string; // age: number; // address: string; // occupation: string; // }
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.
ReturnType
関数型の戻り値の型から型を構築します。これは、外部ライブラリの関数型を処理し、それらに基づいてカスタム型を構築する場合に非常に役立ちます。
import axios from 'axios' type Response = ReturnType function callAPI(): Response{ return axios("url") }
ログイン後にコピー
上記に加えて、よりクリーンなコードを作成するのに役立つユーティリティ タイプが他にもあります。ユーティリティ タイプに関する TypeScript ドキュメントへのリンクは、ここにあります。https://www.typescriptlang.org/docs/handbook/utility-types.html
ユーティリティ タイプは、TypeScript が提供する非常に便利な機能です。開発者は、型のハードコーディングを避けるためにこれらを活用する必要があります。同僚よりも優れているように見えますか? 知っておくべきことは次のとおりです!
この記事は次の場所に転載されています: https://segmentfault.com/a/1190000040574488
プログラミング関連の知識の詳細については、次のサイトを参照してください:
概要プログラミング以上がTypeScript で知っておく価値のある 7 つのメソッドについての簡単な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
-
2023-04-26 17:59:18
-
2023-04-26 17:47:48
-
2023-04-26 17:41:42
-
2023-04-26 17:37:05
-
2023-04-26 17:31:25
-
2023-04-26 17:27:32
-
2023-04-25 19:57:58
-
2023-04-25 19:53:11
-
2023-04-25 19:49:11
-
2023-04-25 19:41:54
最新の問題
Vue 3 構成 API - 空の可能性のあるオブジェクト
Vue3Compositionapi と Typescript を使用して、HammerJS パッケージを使用してピンチズームを実装しています。私は JavaScript で Co...
から 2023-11-08 13:04:14
0
1
166
TypeScript 型からの Nuxt `defineProps`
TypeScript で Nuxt3/Vue3defineProps を使用しており、TypeScript 型から typeprop 型を推論したいと考えています。 import{...
から 2023-10-30 11:35:06
0
1
334