JavaScriptにおける論理型への変換

それでは、他のデータ型から論理型への変換について学びましょう。 この変換は Boolean 関数を使用して行われます。 論理型に変換した際に false となる値は以下の通りです:

javascriptconsole.log(Boolean(0));          // false
console.log(Boolean(-0));         // false
console.log(Boolean(+0));         // false
console.log(Boolean(null));       // false
console.log(Boolean(false));      // false
console.log(Boolean(NaN));        // false
console.log(Boolean(undefined));  // false
console.log(Boolean(''));         // false

JavaScriptでは(他の言語ではそうでないこともありますが)、それ以外の全ての値は true となります。 以下は true に変換されますが、疑問を抱く可能性のある値です:

javascriptconsole.log(Boolean(-1));          // true
console.log(Boolean(Infinity));    // true
console.log(Boolean(-Infinity));   // true

以下の値は引用符で囲まれているため文字列であり、同様に true に変換されます:

javascriptconsole.log(Boolean('0'));         // true
console.log(Boolean('false'));     // true
console.log(Boolean('NaN'));       // true
console.log(Boolean('null'));      // true
console.log(Boolean('undefined')); // true
Задание 1

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(3);
alert(test);
Задание 2

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(0);
alert(test);
Задание 3

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(-1);
alert(test);
Задание 4

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(-0);
alert(test);
Задание 5

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(+0);
alert(test);
Задание 6

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean('abc');
alert(test);
Задание 7

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean('');
alert(test);
Задание 8

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean('0');
alert(test);
Задание 9

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(true);
alert(test);
Задание 10

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(false);
alert(test);
Задание 11

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean('true');
alert(test);
Задание 12

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean('false');
alert(test);
Задание 13

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(null);
alert(test);
Задание 14

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean('null');
alert(test);
Задание 15

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(undefined);
alert(test);
Задание 16

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean('undefined');
alert(test);
Задание 17

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(NaN);
alert(test);
Задание 18

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean('NaN');
alert(test);
Задание 19

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(3 * 'abc');
alert(test);
Задание 20

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(Infinity);
alert(test);
Задание 21

コードを実行せずに、画面に何が表示されるか判断してください:

javascriptlet test = Boolean(1 / 0);
alert(test);