Boolean 組込みオブジェクト

この章では組込み変数領域が初めから備えている Boolean 組込みオブジェクトを定義する。

Boolean は特殊なオブジェクト true および false に対応する Type のインスタンスである。truefalse の二つを合わせて真偽値オブジェクトという。

Boolean のメンバ

prototype
Object.prototype を準プロトタイプとするオブジェクト。
name
文字列オブジェクト "Boolean"
true
真偽値オブジェクトの一つ。 このオブジェクトの全てのメンバ・内部メンバは不変である。 このオブジェクトは次のプロパティを持つ:
toString
Boolean.true を @this 値として関数として呼び出されると [[文字列オブジェクト "true"]] を返すような関数オブジェクト。
またこのオブジェクトは以下の内部メンバを持つ:
$prototype
Boolean.prototype
$isImmutable
Boolean.true
このオブジェクトは関数として呼出し可能でない。
false
真偽値オブジェクトの一つ。 このオブジェクトの全てのメンバ・内部メンバは不変である。 このオブジェクトは次のプロパティを持つ:
toString
Boolean.false を @this 値として関数として呼び出されると [[文字列オブジェクト "false"]] を返すような関数オブジェクト。
またこのオブジェクトは以下の内部メンバを持つ:
$prototype
Boolean.prototype
$isImmutable
Boolean.true
このオブジェクトは関数として呼出し可能でない。
and メソッド
2-ary メソッド。関数として呼出すと次の動作を行う:
  1. 渡された全ての引数について、それぞれ to-boolean を行う。
  2. 全ての to-boolean の結果が true である (引数の個数が 0 である場合を含む) ならば [[初期の Boolean.true]] を、さもなくば [[初期の Boolean.false]] を返す。
or メソッド
2-ary メソッド。関数として呼出すと次の動作を行う:
  1. 渡された全ての引数について、それぞれ to-boolean を行う。
  2. 全ての to-boolean の結果が false である (引数の個数が 0 である場合を含む) ならば [[初期の Boolean.false]] を、さもなくば [[初期の Boolean.true]] を返す。
xor メソッド
2-ary メソッド。関数として呼出すと次の動作を行う:
  1. 渡された全ての引数について、それぞれ to-boolean を行う。
  2. to-boolean の結果が true であった回数が偶数である (引数の個数が 0 である場合を含む) ならば [[初期の Boolean.false]] を、さもなくば [[初期の Boolean.true]] を返す。
not メソッド
1-ary メソッド。一つの引数で関数として呼出すと次の動作を行う:
  1. 渡された引数について、to-boolean を行う。
  2. to-boolean の結果が true ならば [[初期の Boolean.false]] を、さもなくば [[初期の Boolean.true]] を返す。
関数呼出しにおいて引数の個数が 1 でない場合の動作は未定義である。

Boolean の内部メンバ

$prototype
Type.prototype

Boolean の関数としての呼出し

Boolean は関数として呼出し可能であり、関数として呼出されると 新しい UnsupportedOperationError のインスタンスを投げる。

真偽値オブジェクトのプロパティ

真偽値オブジェクトは以下のプロパティを持つ。ただし、 Boolean.prototype やその準プロトタイプのプロパティが スクリプトの実行によって変更された場合は、この限りではない。

and メソッド
Math$and メソッド
関数として呼出したとき、@this 値および全ての引数が Boolean オブジェクトならば、その @this 値と全ての引数を引数として Boolean.and を関数として呼出し、その結果を返す。
or メソッド
Math$or メソッド
関数として呼出したとき、@this 値および全ての引数が Boolean オブジェクトならば、その @this 値と全ての引数を引数として Boolean.or を関数として呼出し、その結果を返す。
xor メソッド
Math$xor メソッド
関数として呼出したとき、@this 値および全ての引数が Boolean オブジェクトならば、その @this 値と全ての引数を引数として Boolean.xor を関数として呼出し、その結果を返す。
not メソッド
Math$not メソッド
0-ary メソッド。関数として呼出したとき、@this 値が Boolean オブジェクトであり、引数の個数が 0 ならば、その @this 値を引数として Boolean.not を関数として呼出し、その結果を返す。
© 2006-2007 Magicant