問題タブ [structural-typing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
383 参照

scala - 型で使用するapplyメソッド [Scala]

Scala コードをざっと調べていたところ、apply メソッドが .NET でも使用されていることがわかりましたtype

例:

上記のコードはどういう意味ですか?

私が理解しているように、 Common は apply メソッドを含むすべてのタイプを指すことを意味します。しかし、質問は、それがどのような適用方法を意味するのかということです。apply メソッドの入力はどうあるべきですか?

また、

2つの一般的なタイプの違いは何ですか?

0 投票する
2 に答える
103 参照

typescript - 任意の量の値を持つオブジェクトをキャッチする TypeScript インターフェイス

次のようなオブジェクトがあります。

この型を記述する TypeScript インターフェースを記述できますか?

0 投票する
1 に答える
60 参照

scala - Java 静的メソッドをミラーリングする構造型

呼び出しでサードパーティの Java ライブラリが与えられた場合

これを表す構造型を定義できますか? 以下は、静的な性質を捉えていないため、型の一致はありません。

もちろん、私はいつでもこの呼び出しを何か他のものでラップすることができます.それは私が必要に応じて行うことです. しかし、このメソッドの型を定義する構文はありますか?

0 投票する
1 に答える
166 参照

javascript - 構造的サブタイピングに関連するフローの情報損失は、この種のポリモーフィズムに固有のものですか?

フローの構造的サブタイプは、情報の損失につながる可能性があります。

(このコードは目に見える変更を実行するため、ひどいものです。説明のみを目的としています。)

行ポリモーフィズムは、型の安全性を損なうことなくこの情報の損失を回避するための概念であると読みました。

サブタイプ多型で同じことを達成する方法はありますか?

[編集]

より多くの聴衆に向けて、少し怖い用語について簡単に説明します。

  • Polymorpishmは、2 つの型が等しいかどうかを判断するための派手な言葉です。つまり、厳密な型システムをより柔軟にします。
  • パラメトリック ポリモーフィズム(フロー内のジェネリック) では、型はまったく問題にならないため、2 つの型は常に同等であると述べています。
  • サブタイプ ポリモーフィズム(フロー内のサブタイプ) では、2 つのタイプから階層を導き出すことができる場合、つまりサブタイプをそのスーパータイプの下に含めることができる場合、2 つのタイプは同等であると述べられています。
  • 行ポリモーフィズムはサブタイプに似ていますが、情報損失の問題を解決します (ただし、技術的には、サブタイプの関係はもうないため、サブタイプの形式ではありません)。
  • 有界ポリモーフィズムは、2 つの型が特定の目的 (例えば、等価性、順序、マッピングオーバーなど) でのみ同等であると述べています。