「JavaScript/Boolean」の版間の差分

削除された内容 追加された内容
M編集の要約なし
4 行
JavaScriptにおける真偽値は、真を<code>true</code>、偽を<code>false</code>という2つの値で表します。<code>0 < 1</code>(0は1より小さい)という比較結果は<code>true</code>であり、<code>0 > 1</code>(0は1より大きい)という比較結果は<code>false</code>です。
 
<sourcesyntaxhighlight lang="javascript">
alert( 0 < 1 ); // true
alert( 0 > 1 ); // false
</syntaxhighlight>
</source>
 
論理演算子は必ず<code>true</code>または<code>false</code>の真偽値を返します。さらに数値や文字列、関数などあらゆるオブジェクトは、<code>true</code>と<code>false</code>のいずれかの真偽値に変換することができます。<code>true</code>自身の真偽値は<code>true</code>、<code>false</code>自身の真偽値は<code>false</code>であると約束します。ほとんどのものは<code>true</code>ですが、数値の<code>0</code> (<code>-0</code>) や空文字列 <code>""</code>、<code>NaN</code>、<code>null</code>、<code>undefined</code>などは<code>false</code>です。
14 行
'''Boolean'''オブジェクトはJavaScriptのプリミティブな[[w:ブーリアン型|ブーリアン型]]をラップします。これは<code>true</code>や<code>false</code>が所属するオブジェクトとして便宜上定義されたもので、それ以上の意味はありません。何らかの値をBooleanオブジェクト(真偽値)に変換するには、Booleanオブジェクトのコンストラクタを関数として呼び出します。
 
<sourcesyntaxhighlight lang="javascript">
var bool = Boolean("0 but true");
alert(bool); // true
</syntaxhighlight>
</source>
 
あるいは[[JavaScript/演算子#論理演算子|論理否定演算子]]<code>!</code>を使用することで、値を強制的にBooleanオブジェクトに変換することができます。
 
<sourcesyntaxhighlight lang="javascript">
var bool = !!"0 but true";
alert(bool); // true
</syntaxhighlight>
</source>
 
<code>!!</code>の方が簡潔だという人もいれば、Booleanコンストラクタの方がわかりやすいという人もいるでしょう。[[JavaScript/制御構造#if|if文]]の条件式に渡されたオブジェクトは、自動的に真偽値に変換されます。なお、<code>"0 but true"</code> という文字列はただの文字列であり、特別な意味はありません。