2017-05-01 23 views
2

未定義の変数をチェックするのにこのコードを使用していますが、機能していません。Typescriptで未定義をチェックする方法

var uemail = localStorage.getItem("useremail"); 
 
      if (typeof uemail === "undefined") 
 
{ 
 
alert('undefined');`` 
 
} 
 
else 
 
{ 
 
alert('defined'); 
 
}

答えて

-4

次いで、変数zは次のように定義されていないかどうかをチェックすることができます。 、あなたは1本のヒットでnullとundefinedの両方をテストすることができジャグリング・チェックを使用して

:いくつかのケースで助けることができるobject.propertieをチェックするために、この後半の答えを追加

var uemail = localStorage.getItem("useremail"); 
 
if (uemail.toString() !== "undefined") 
 
{ 
 
alert('Not undefined');`` 
 
}

+0

これは本当に事のこのタイプをチェックする有効な方法ではありませんが、ここで見てみましょう:https://basarat.gitbooks.io/typescript/docs/tips/ null.html – Garfty

1

実際には動作していますが、nullundefinedの間に違いがあります。あなたは実際に値を返すuemailに割り当てています。存在しない場合はnullを返します。 documentationに従って。

両者の違いの詳細については、this answerを参照してください。

あなたの要件に応じて、Garftyの答えがうまくいくかもしれません。また、hereのように見たいかもしれません。

3

Typescript 2では、未定義型を使用して未定義の値をチェックできます。 変数を次のように宣言した場合: let uemail:string | let未定義;我々は未定義チェックするため.toString()を使用することができる活字体で(uemailは===定義されていない)場合 {

}

0

if (object.property == null) { 

あなたは厳格なチェックを使用している場合は、それだけでnullに設定された値のために真となり、undefiのための真として評価しません型変数:

if (object.property === null) { 

Typescriptには、変数が定義されているかどうかをチェックする機能がありません。

0

既にnullまたは未定義です。 nullまたはundefinedには型がありません。最初に定義されていないかどうかを確認できます。型付きで(null == undefined)が真です。

if (uemail == undefined) { 
     alert('undefined'); 
    } else { 
     alert('defined'); 
    } 

または

if (uemail == null) { 
     alert('undefined'); 
    } else { 
     alert('defined'); 
    } 
関連する問題