javascript - Typescript には、インターフェイスおよびオブジェクト リテラルの追加プロパティの検出に問題があります。アサーションまたは変数を使用するときに追加プロパティが検出されないのはなぜですか?
習慣沉默
習慣沉默 2017-06-30 09:52:24
0
2
624
リーリー

ts このコードをコンパイルするとエラーが発生しますが、以下の 2 つの方法を使用するとエラーが発生しません。原理は何ですか?公式サイトの説明は私には理解不能で、ts 構文が非常にカジュアルな印象を受けるだけです...

リーリー ###または### リーリー

この方法ではエラーは報告されません。アサーション (as/<>) を使用する場合、インターフェイスはどのようなルールに従って比較されますか?次に、オブジェクト リテラルを変数にコピーします。これがオブジェクトへの参照ポインターであることはわかっていますが、追加のプロパティが検出されないのはなぜですか?公式サイトアドレス

習慣沉默
習慣沉默

全員に返信 (2)
为情所困

最初の例:as不是断言吧as是强制转化 就说明你知道你要做的事情 当然 ts 也就让你编译过了
第二个例子 好像本来就应该过的吧color你又不是一定要;colourは別の属性です
これまで使用されなかった理由は、ts にオブジェクト リテラルに対する独自のチェックがあるためです

いいねを押す+0
    洪涛
    1. 強制型変換とは、変数を別の型として強制的に使用するもので、実行時に発生した問題はユーザーの責任となります。

    2. オブジェクト リテラルを使用してオブジェクトを割り当てる検出ロジックは、変数を使用してオブジェクトを割り当てるメカニズムとは異なります。

    リーリー
    いいねを押す+0
      最新のダウンロード
      詳細>
      ウェブエフェクト
      公式サイト
      サイト素材
      フロントエンドテンプレート
      私たちについて 免責事項 Sitemap
      PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!