序文: 今日お話ししたいのは、やはりTSに関連したものです。TSで最も一般的な宣言のマージは、インターフェースのマージです。 インターフェースのマージについて話す前に、宣言のマージについて話しましょう 宣言のマージ: 宣言のマージとは何ですか? 実際、TS での宣言のマージは、コンパイラが同じ名前の宣言を 1 つの宣言にマージすることを意味することは簡単に理解できます。 合併の結果: 結合された宣言は、2 つ以上の元の宣言の特性を持ちます。 疑い: 実際には、話すべき状況はいくつかあります。今日はそのうちの 1 つについてお話します。宣言のマージの最も単純で最も一般的なタイプは、インターフェースのマージです。 1. マージインターフェース「統合された宣言は、2つ以上の元の宣言の特徴を持つ」と述べました。 同じことはインターフェースのマージにも当てはまり、両方のパーティのメンバーが同じ名前のインターフェースに配置されます。 インターフェース内のメンバーには関数メンバーと非関数メンバーが含まれており、状況が異なることに注意する必要がある。 1.1 非関数メンバー例えば: インターフェースボックス{ 高さ: 数値; } インターフェースボックス{ 幅: 数値; } box: Box = {高さ: 2、幅: 3}とします。 上記のコードでは、同じ名前 ただし、上記の場合のメンバーは一意であることに注意してください。ただし、2 つのインターフェースが同じ名前の非関数メンバーを宣言し、その型が異なる場合、コンパイラはエラーを報告します。 1.2 関数メンバー内部の関数メンバーについては、同じ名前を持つ各関数宣言がこの関数のオーバーロードとして扱われます。そして、インターフェースAが後のインターフェースAと統合されると、後のインターフェースの方が優先度が高くなります。 たとえば、公式の例: インターフェースクローナー{ クローン(動物: 動物): 動物; } インターフェースクローナー{ クローン(動物: 羊): 羊; } インターフェースクローナー{ クローン(動物: 犬): 犬; クローン(動物: 猫): 猫; } 最終的には、次のように 1 つのステートメントにまとめられます。 インターフェースクローナー{ クローン(動物: 犬): 犬; クローン(動物: 猫): 猫; クローン(動物: 羊): 羊; クローン(動物: 動物): 動物; } 注意すべき点が 2 つあります。
ただし、特別な関数シグネチャが表示される場合は例外です。 シグネチャ内のパラメータの型が単一の文字列リテラル(つまり、文字列リテラルの結合ではない)である場合、そのパラメータはオーバーロード リストの先頭に昇格されます。 TS で最も一般的な宣言のマージ (インターフェースのマージ) に関するこの記事はこれで終わりです。TS でのインターフェースのマージについてさらに詳しく知りたい場合は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: HTML のボタン タグをクリックしてページにジャンプする 3 つの方法
>>: DockerはMysql、.Net6、Sqlserverなどのコンテナをデプロイします
故障したストレージ ドライブからデータを救出する場合でも、アーカイブをリモート ストレージにバックア...
mysql は大文字と小文字を区別しないように設定されていますウィンドウズmysqlがインストールさ...
Docker に TensorFlow 環境をすばやくインストールし、TensorFlow を使用し...
1. <dl>はリストを定義し、<dt>はリスト内の項目を定義し、<d...
質問js を使用して CSS 疑似クラス スタイルを変更するにはどうすればよいでしょうか?しかし、j...
Node の研究と応用を通じて、NodeJS はシングルスレッド、イベント駆動型、非ブロッキング I...
データ内に次のような特徴を持つ「 ' 」などの文字が含まれることがあります。 &# ...
コードは次のようになります。 <!DOCTYPE html> <html> ...
1. /etc/init.dディレクトリに新しいrabbitmqを作成します。 [root@loca...
目次uni-app のスタイル要約するuni-app のスタイルsassプラグインは公式ウェブサイト...
次の図に示すように: 仮想マシンと Docker を使用するとき、「なぜ Docker は VM よ...
Nginx Rewriteの使用シナリオ1. URL アドレスジャンプ。たとえば、ユーザーが pm....
質問通常の開発では、プロジェクトを Tomcat にデプロイする場合、プロジェクトを war パッケ...
遅い問題を完全に解決したい場合は、MySQL を MySQL 8.0 にアップグレードすることをお勧...
この記事では、タブバーの切り替え効果を簡単に実現するためのJavaScriptの具体的なコードを参考...