#javaSciprt undefined値の判定
javaScriptでは初期化していない変数にはundefinedがセットされている
※undefinedはプリミティブ値を示す
javascirpt
var tmp;
console.log(tmp); //->undefined
###当然文字列ではないので文字判定ではNG
javascirpt
var tmp;
if( tmp == "undefined"){
console.log("true");
}else{
console.log("false");
}
//->false
###typeof 演算子を利用する
javascirpt
var tmp;
if( typeof tmp === 'undefined'){
console.log("true");
}else{
console.log("false");
}
//->true
###厳格な等価評価
javascirpt
var tmp;
if( tmp === undefined){
console.log("true");
}else{
console.log("false");
}
//->true
undefined と厳格を行う事で評価することが出来るが、この方法は推奨されていない
MDN参考
###void 0と比較
javascirpt
var tmp;
if( tmp === void 0){
console.log("true");
}else{
console.log("false");
}
//->true
voidはあらゆる値に作用し、常にundefinedを返す演算子でそれを利用する
MDN参考