TypeScript または JavaScript の型キャスト 質問する

TypeScript または JavaScript の型キャスト 質問する

TypeScript または Javascript で型キャストをどのように処理しますか?

次のような TypeScript コードがあるとします。

module Symbology { 

    export class SymbolFactory { 

        createStyle( symbolInfo : SymbolInfo) : any { 
            if (symbolInfo == null)
            {
                 return null;
            }

            if (symbolInfo.symbolShapeType === "marker") {      

                // how to cast to MarkerSymbolInfo          
                return this.createMarkerStyle((MarkerSymbolInfo) symbolInfo);
            }                                  
        }

        createMarkerStyle(markerSymbol : MarkerSymbolInfo ): any { 
            throw "createMarkerStyle not implemented";
        }              

    }
}

SymbolInfo基本クラスです。TypeScriptまたは Javascript でからSymbolInfoへの型キャストをどのように処理しますか?MarkerSymbolInfo

ベストアンサー1

次のようにキャストできます:

return this.createMarkerStyle(<MarkerSymbolInfo> symbolInfo);

または、tsx モードと互換性を持たせたい場合は次のようになります。

return this.createMarkerStyle(symbolInfo as MarkerSymbolInfo);

これは実行時キャストではなく、コンパイル時キャストであることを覚えておいてください。

おすすめ記事