判定処理と真偽値
判定処理の基本
javaScriptを書く時に、
「判定処理」として

このように、
判定処理を行って、
- 判定処理が「正」として処理を行う
- 判定処理が「誤」として処理を行う
という判定を行います。
これは、
「if文」を用いて判定を行いますが、
具体的には、
let moji = '文字';
if(moji == '文字') {
console.log('文字は同じです。');
}
else {
console.log('文字は同じではありません。');
}
という形で使います。
判定処理や繰り返し処理は、
処理の流れを扱うものなので、
この辺りの基本的なことについては、
以下の記事を参考にしましょう。
判定部分での真偽値の考え方
このif文をもう少し、詳しくみていきましょう。
判定処理としては、
if(【判定処理】) {
【判定処理】が「正」の時の処理
}
else {
【判定処理】が「誤」の時の処理
}
のようになります。
ここでポイントとなるのは、
判断処理自体は、
【判定処理】が「誤」である条件
すなわち
真偽値の「0」になる条件
であることが、
判断として「誤」となることです。
実際に、
以下のコードで自分自身でも試してみましょう。
if(0) {
console.log('正');
}
else {
console.log('誤');
}
こちらを実行すると、
結果として、
誤
が表示されます。
この「0」以外は、「正」の方の結果になってしまうので、
// 以下の結果は「正」と表示
if(1) {
console.log('正');
}
else {
console.log('誤');
}
という処理や、
// 以下の結果は「正」と表示
if(777) {
console.log('正');
}
else {
console.log('誤');
}
などに関しても、
「正」と表示される動きになります。
判定処理の具体例で考えてみよう
実際によく使われるif文で、
上記の【判定処理】をもう少し、詳しくみていきましょう。
具体的な例として、
let moji = 'テスト';
if(moji == '違う文字') {
console.log('正');
}
else {
console.log('誤');
}
というコードを考えてみましょう。
このコードを
if(【判定処理】) {
【判定処理】が「正」の時の処理
}
else {
【判定処理】が「誤」の時の処理
}
にあてはめると、
【判定処理】の部分は、
moji == '違う文字'
という部分です。
この部分の結果が、
「0」なのか、それ以外なのかをみていきましょう。
確認するコードとして、
let moji = 'テスト';
console.log(moji == '違う文字');
このコードで確認すると、
false
という結果が得られます。
「false」という値に関しては、
の記事の最後の方に書いていますが、
console.log(Number(false));
で確認すると、
0
という結果になるので、
if(0) {
console.log('正');
}
else {
console.log('誤');
}
という意味のコードになり、
結果として、
誤
という表示になります。
このように、
判定処理では、
真偽値の「0」になるかどうかが、
判定処理の結果を左右しているのを覚えておきましょう。
自分で色々と試してみよう
- 判定処理として、「0」になるかどうか、
- この辺りを試すことは、
- 理解を深めるので、
- 以下のようにコードを作って
- 試してみるとよいでしょう。
- –
- サンプルコード(自分なりに答えを確認してみましょう)
// test1
let test1 = 100 == 100;
console.log(test1);
console.log(Number(test1));
if(test1) {
console.log('test1は「正」です');
}
else {
console.log('test1は「誤」です');
}
// test2
let test2 = 100 == 101;
console.log(test2);
console.log(Number(test2));
if(test2) {
console.log('test2は「正」です');
}
else {
console.log('test2は「誤」です');
}
// test3
let test3 = '文字' == '文字';
console.log(test3);
console.log(Number(test3));
if(test3) {
console.log('test3は「正」です');
}
else {
console.log('test3は「誤」です');
}
// test4
let test4 = '文字' == '違う文字';
console.log(test4);
console.log(Number(test4));
if(test4) {
console.log('test4は「正」です');
}
else {
console.log('test4は「誤」です');
}