JavaScriptで「switch文」は「if文」にできるよ

シェアする

  • このエントリーをはてなブックマークに追加
  • 0

あーりーです。

最近、JavaScriptの勉強にハマっています。

勉強というより、遊び感覚でのんびりと楽しみながらやってます。

JavaScriptの記事は「初心者のための超わかりやすいJavaScript入門」にまとめてあります。

さてさて。

先日は、JavaScriptの「switch文」について書きました。

今回も、そのへんのことを書いてみたいと思います。

スポンサーリンク

「switch文」は「if文」にできる

今回のテーマは…

「switch文」は「if文」にできる!

です。

実際にやってみようと思います。

switch文

先日の「switch文」がこちらです。

<html>
<head>
</head>
<body>

<script>
var x;
x=prompt("どの方角に行く?","");

switch(x){
case "東":
document.write("海があるよ");
break;

case "西":
document.write("山があるよ");
break;

case "南":
document.write("砂漠があるよ");
break;

case "北":
document.write("草原があるよ");
break;

default:
document.write("もう1回言って");
}
</script>

</body>
</html>

冒険の旅に出た「勇者」が、町の人に話しかけて情報をもらう…

という設定です。

詳しくは先日の記事「よくわかるswitch文の基本」をご覧ください。

スポンサーリンク

実行すると?

上の内容をメモ帳などのエディタにコピペしてHTML形式で保存し、そのファイルを開く…

入力ダイアログが出てきて「どの方角に行く?」と聞かれます。

入力欄に「東」「西」「南」「北」いずれかの文字を入れると、その方角に応じた情報が返ってきます。

if文

これと同じ内容を「if文」でも表現することができます。

それがこちらです。

<html>
<head>
</head>
<body>

<script>
var x;
x=prompt("どの方角に行く?","");

if(x=="東"){
document.write("海があるよ");

}else if(x=="西"){
document.write("山があるよ");

}else if(x=="南"){
document.write("砂漠があるよ");

}else if(x=="北"){
document.write("草原があるよ");

}else{
document.write("もう1回言って");
}
</script>

</body>
</html>

※「if文」ってそもそも何だっけ?という場合は「よくわかるif文の基本」をご覧ください。

比較

「switch文」と「if文」を比較してみますね。

たとえば…

入力ダイアログに「東」と入力した場合です。

「switch文」では、「東」と入力されたかどうかの判別を、この部分でやっています。

case "東":

一方、「if文」では、この部分でやっています。

if(x=="東"){

表現は違いますが、どちらも変数「x」に代入された情報が「東」なのか、そうじゃないのかを判別して、処理しています。

「if文」を「switch文」にできるとは限らない

上で見てきたように、「switch文」は「if文」にできます。

でもその逆は、できるとは限りません。

つまり…

「if文」を「switch文」にできるとは限らないんです。

「if文」は幅のある判定ができる

「if文」にしかできないことがあります。

幅のある判定です。

たとえば…

if(x>=100){

とか。

これは、変数「x」が100以上であるかどうかを判定しています。

ずばり100じゃなくてもいいんです。

100以上であればOK!という、幅のある判定です。

※以上や以下などの比較演算子についてはコチラをご覧ください。

「switch文」は幅のある判定ができない

こうした幅のある判定が「switch文」ではできません。

だから、「if文」で幅のある判定をしている場合は、それを「switch文」に書き換えることはできないんです。

以上~。

「switch文」は「if文」にできるよ、でもその逆はできるとは限らないよ!

という話でした。

今回はこれでおしまいです。

最後までお付き合いありがとうございました。

JavaScriptの記事は、この記事も含めて「初心者のための超わかりやすいJavaScript入門」にまとめてあります。よろしければご覧ください。

A8 JavaScript

おまけ

JavaScriptを一人で勉強していてわからないことがあれば、teratailで質問することをおすすめします。

プログラミングに特化したYahoo!知恵袋のようなサイトです。

超・初心者のぼくにも優しく教えてくれました。

とても感謝しています。

関連記事コンテンツ



シェアする

  • このエントリーをはてなブックマークに追加

フォローする

自己紹介

あーりーと申します。アクセスありがとうございます。布団でぬくぬくしながら本を読んだりスマホでテレビを見たり、のんびり過ごすのが好きです。

ブログ村

ブログランキング・にほんブログ村へ