JavaScriptにおけるundefinedの真偽値(Boolean値)とは?falsyな値を解説
undefinedのブール値はfalse
JavaScriptにおいて、undefinedのブール値(Boolean値)はfalseになります。これはundefinedだけに限った話ではなく、null、false、NaN、そして空文字列("")も同様にfalseへと変換されます。
このように、Boolean()関数や条件式の中でfalseと評価される値のことは、一般的に「falsy(偽値)」と呼ばれます。それ以外のほとんどの値(0以外の数値、空でない文字列、オブジェクトなど)は「truthy(真値)」としてtrueに変換されます。
サンプルコード
次の例では、undefined、false、NaN、空文字列のブール値をそれぞれ表示しています。
最初の3行のコードでは、配列に「ホール(hole)」と呼ばれる空きが作られます。arr[6] = 7;を実行すると、インデックス4と5には値が存在しないため穴ができます。このホールは空の値にほかならないため、そこにはundefinedが入り、ブール値としてfalseが表示されます。
<html>
<body>
<script>
var arr = [1,2,3,4];
arr[6] = 7; // インデックス5と6の間にホールができる
var x = arr[4]; // 存在しない要素 → undefined
document.write(Boolean(x));
var y = undefined;
document.write("</br>");
document.write(Boolean(y));
var z = 5/"k"; // 数値ではない計算結果 → NaN
document.write("</br>");
document.write(Boolean(z));
var a = "";
document.write("</br>");
document.write(Boolean(a));
document.write("</br>");
var b = false;
document.write(Boolean(b));
</script>
</body>
</html>実行結果
false false false false false
まとめ
JavaScriptでfalseと評価される主なfalsyな値は以下の通りです。
- undefined
- null
- false
- NaN(Not a Number)
- 空文字列("")
- 0(数値のゼロ、-0も含む)
条件分岐やバリデーション処理を行う際には、これらの値が暗黙的にfalseへ変換されることを理解しておくと、意図しないバグを防ぐことができます。
-
JavaScriptのvoid 0とは?意味と使い方をわかりやすく解説
JavaScriptには「void」という演算子があります。一見すると不思議な存在に見えますが、実はシンプルな役割を持っています。この記事では、void 0 の意味と、実際にどのような場面で使われるのかをわかりやすく解説します。 void演算子の基本的な意味 void 演算子は、与えられた式を評価したうえで、必ず「undefined」を返す演算子です。つまり、void(0) と書くことで、undefined というプリミティブな値を確実に取得することができます。 たとえば、void(0) は数値の 0 を評価した後、その結果を捨てて undefined を返します。評価する式が何であれ、結果は
-
JavaScriptで<text>要素の値を変数に抽出する方法
JavaScriptで要素の値を変数に抽出するにはSVGの<text>要素のテキスト値を変数に抽出したい場合は、textContentプロパティを使用します。基本的な書き方は以下の通りです。document.getElementById(yourTextIdValue).textContentgetElementById()メソッドで対象の要素をIDから取得し、そのtextContentプロパティを参照することで、要素内のテキストを文字列として変数に格納できます。textContentとinnerHTMLの違いなお、SVG要素の場合はinnerHTMLよりもtextContentを