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);
これは実行時キャストではなく、コンパイル時キャストであることを覚えておいてください。