論理値

広告

論理値は基本データ型の1つであり、true又はfalseのいずれかの値を取ります。trueとfalseはJavaScriptで予約語として用意されているものです。

スクリプトの中で論理値の値を記述する場合はtrue又はfalseを直接記述して下さい。

true
false

論理値は主に等値演算子や関係演算子が含まれる式を評価した結果として返されます。例えば値と値が等しいかどうかを比較した時、正しければtrueを返し正しくなければfalseが返されます。次の例を見てください。

10 == 10
15 < 8

「10 == 10」は「==」演算子の左辺と右辺の値が等しいかどうかを判別します。この場合は正しいですので「10 == 10」はtrueを返します。また「15 < 8」は「<」演算子の左辺が右辺より大きいかどうかを判別します。この場合は間違っていますので「15 < 8」はfalseを返します。(詳しくは関係演算子のページで確認します)。

では論理値は何に使用されるのかと言うと、条件分岐や繰り返し処理の条件式の中で用いられます。条件分岐の一つであるif文は、条件式が返す論理値によって実行する処理を分けます。次を見てください。

if (15 < 8){
  // 条件式がtrueを返す時に処理される文
}else{
  // 条件式がfalseを返す時に処理される文
}

この「15 < 8」が条件式に該当します。この場合、「15 < 8」はfalseを返しますので「条件式がfalseを返す時に処理される文」が処理されることになります。

このように論理値はtrueやfalseの値を画面に出力したり計算したりといった用途で使うのではなく、条件式が正しいか正しくないのかいった状態を表すために使われます。

サンプルコード

では簡単なサンプルで試してみます。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<title>JavaScript テスト</title>
</head>
<body>

<script type="text/javascript" src="./js/script6_1.js">
</script>

</body>
</html>
document.write('<p>' + (10 == 10) + '</p>');
document.write('<p>' + (15 < 8) + '</p>');

上記を実際にブラウザ見てみると次のように表示されます。

p6-1

論理値をこのように使用することは通常ないのですが、論理値も値の1つですのでこのように出力することもできます。

( Written by Tatsuo Ikura )