問題
第1問
b = true
switch (b) {
case true:
"T"
break;
case false:
"F"
break;
default:
"hoge"
}
//=> ?
第2問
b = new Boolean(true)
switch (b) {
case true:
"T"
break;
case false:
"F"
break;
default:
"hoge"
}
//=> ?
答え
第1問
b = true
switch (b) {
case true:
"T";
break;
case false:
"F";
break;
default:
"hoge";
}
//=> T
第2問
b = new Boolean(true)
switch (b) {
case true:
"T";
break;
case false:
"F";
break;
default:
"hoge";
}
//=> "hoge"
ちょっと解説
switch文で隠蔽される同値比較演算は型変換をしない===
演算である。
b = true
b === true
//=> true
b = Boolean(true)
b == true
//==> true
b = new Boolean(true)
b === true
//=> false