0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

JavaScriptの基本③ 条件分岐と繰り返し処理

Last updated at Posted at 2024-11-25

本記事ではJavaScriptの条件分岐と繰り返し処理についてご紹介します。
まず条件分岐から説明します。

条件分岐

・if文
・switch文

if文

基本的な条件分岐です。if(条件式){処理}の構文で成り立ち、(条件式)を計算してtrueとなるかfalseとなるかを判断します。

if(条件式){
    //処理
}

<<使用例>>


let i = 3;
if(i > 1){
    // iが1より大きいかどうか判断します
    console.log(i + 'は1よりも大きいです');
}

条件式に合致(true)すればコンソール上で下記のように結果が表示されます。
image.png

変数iに1以下を代入して確認してみます。


let i = 0;
if(i > 1){
    // iが1より大きいかどうか判断します
    console.log(i + 'は1よりも大きいです');
}

(i > 1)の条件式に一致しないためコンソールには何も表示されません。
image.png


if文でtrueでなかった場合の処理を書きたい…
そんな時はelseを使用します。

if(条件式){
    //処理
}else{
    //処理
}

<<使用例>>


let i = 0;
if(i > 1){
    // iが1より大きいかどうか判断します
    console.log(i + 'は1よりも大きいです');
}else{
    console.log(i + 'は1よりも小さいです');
}

このように書くことで、条件式(i > 1)に当てはまらなかった場合の処理を下に記載することができます。
コンソールに表示された結果はこのようになります。
image.png


if文でもっと条件を増やしたい…
そんな時はelse ifを用います。先ほどの「if」「else」の間に記載します。

if(条件式1){
    //処理
}else if(条件式2){
    //処理
}else{
    //処理
}

このように記載することで、このような意味になります。
「if もし〇〇だった場合」

「else if もし〇〇でなくて△△である場合」

「else 〇〇でも△△でもない場合」

<<使用例>>

let i = 1;
if(i > 1){
    // iが1より大きいかどうか判断します
    console.log(i + 'は1よりも大きいです');
}else if(i == 1){
    // iが1と一致するかどうか判断します
    console.log(i + 'は1です');
}else{
    console.log(i + 'は1よりも小さいです');
}

コンソールに表示される結果はこのようになります。
image.png

また、else ifの記述による条件は、「if」と「else」の間に複数増やすこともできます。

しかし、条件が増えすぎるとコードの可読性が低くなります。
そのため、複数の条件分岐に対応したのがswitch文です。

switch文

if文ほど使用頻度は高くありませんが、複数の値を用意して、その値に一致した場合、該当する処理を行う条件分岐です。

switch (){
    case :
        // 処理
    case :
        // 処理
    case :
        // 処理
    case :
        // 処理
    default:
        // 処理
}

<<使用例>>

let color = 'red';

switch (color) {
    case 'red':
        console.log('');
        break;
    case 'blue':
        console.log('');
        break;
    case 'yellow':
        console.log('');
        break;
    case 'white':
        console.log('');
        break;
    default:
        console.log('不明な色です');
}

コンソールに表示される結果はこのようになります。
image.png

書き方のポイントとしては
分岐後の処理のbreak
…分岐して処理を行った後にbreakを記述しないと、そのまま次の条件に当てはまるかどうか検証し続けてしまい、無限ループが発生してしまうためです。

if文でのelseがdefault
…switch文の条件に一致しない値だった場合はelseではなくてdefaultを記述します。

また、記載したswitch文の条件に一致した条件から処理が行われるため、
例えば「〇〇かつ△△」という、〇〇と△△どちらでもある値だった時、
この場合switch文中で先に書かれていた条件の処理が行われます。

繰り返し処理

・for文
・while文
・do while文

for文

…ある特定の処理を、指定した数繰り返し処理を行うための文。

for(let i=1; i<=5; i++){
    console.log(i);
}

for文の中身を分解して考えてみましょう。

let i=1 …変数iを宣言し、1を代入します。

i<=5 …これはfor文の処理が行われるための条件です。
      内容としては「iが5以下である場合は処理を行う」という意味合いになります。

i++ …iの後置インクリメント演算子です。console.logの処理が終わった後にiを+1します。

つまり、「変数iが5以下である場合、console.logの処理を行い、を+1する」ということです。

コンソール上でどのような結果が出るか確認してみましょう。

image.png

このように5以上の数値になるまで数字がコンソール上に表示されるようになります。

while文

let i = 1;
while(i<=10){
    // 条件式がtrueの時に行われる処理
    console.log(i);
    i++;
}

while文を使用する場合、forのようにまとめて宣言・条件・処理内容を記載するのではなく
while文の外側で変数の宣言をし、while文の()内に条件を記載し、iにiを足す処理をそのwhile文の内側で行います。

ソースコードを実行するとコンソール上に下記のような結果が表示されます。
image.png

do while文

先ほどのwhile文と同様に外で変数の定義を行うところまでは同じですが、
異なるのは、次にdo {処理}を記述し、doの外に繰り返し処理の条件を記載するようになっています。

let i = 3
do {
    console.log(i);
    i++;
} while(i <= 5);

こちらは変数iの中に3を代入しているため、コンソール上に3~5までの数字が出力されます。

image.png

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?