javascript 何をfalseと判定するか
if文などの条件に渡されたときにfalseと判定されるもの。
<!DOCTYPE html> <html lang='ja'> <head> <meta http-equiv="content-type" content="text/html; charset=Shift_JIS"> <title>false判定</title> <script type="text/javascript"> function print(str){ var s = str + '<br>'; document.getElementById('result').innerHTML += s; } function check_bool(v){ if(v){ return "true";} return "false"; } window.onload = function(){ var u; var i = parseInt("hoge"); print("true -> " + check_bool(true)); print("false -> " + check_bool(false)); print("null -> " + check_bool(null)); print("undefined -> " + check_bool(u)); print("NaN -> " + check_bool(i)); print("1 -> " + check_bool(1)); print("0 -> " + check_bool(0)); print("-1 -> " + check_bool(-1)); print("[] -> " + check_bool([])); print("{} -> " + check_bool({})); print("\"foo\" -> " + check_bool("foo")); print("\"\" -> " + check_bool("")); } </script> </head> <body> 結果<br> <div id='result'></div> </body> </html>
結果
結果 true -> true false -> false null -> false undefined -> false NaN -> false 1 -> true 0 -> false -1 -> true [] -> true {} -> true "foo" -> true "" -> false