0
事実: 私はTS v。2.3.4を使用しています。私は、天候が確定していることを確認する関数を作成しました(パラメータとしてvariable
をとり、'undefined' !== typeof variable
を返します)。ケーキの平和。タイプチェックとコンパイルエラーのTypescript外部関数
export function IsDefined(variable: any): boolean {
return 'undefined' !== typeof variable;
}
問題:コードの下が2行に警告を生成します。 waringは、オブジェクトがおそらく定義されていないと言っています。
if (IsDefined(myVar)) {
myVar.mockProperty = "asdf"; //Object (myVar, obviously) is possibly undefined
}
質問:IsDefined()
方法は未定義値に対して変数をチェックするTSコンパイラに伝えるためにどのような方法がありますので、それは偽の情報と警告していないのですか?これを回避する他の方法はありますか?私が知っていると、彼らはコードが汚れますので、私は、使用して喜んでいないよ
回避策:
(<myType>myVar).mockProperty = "asdf";
if ("undefined" !== typeof myVar) {
うわー、素敵な機能。私は急いでドキュメントを読んでいるに違いない);ありがとう! –