質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

840閲覧

switch構文での質問

tooju

総合スコア15

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2020/09/23 09:02

現在JavaScript勉強中のものです。

下記のコードに関してです。

// station変数に入力結果を格納 var station = prompt("1.A駅 2.B駅 3.C駅\n行き先の駅を1, 2, 3から選んでください"); // promptから得た値は文字列となるので、後の処理のために数値に変換しておく station = Number(station); // その駅に停まる電車の種類を格納する変数 var type; switch (station) { case 1: type ="快速"; break; case 2: type ="快速と急行"; break; case 3: type ="特急"; break; default: // 選択肢以外のものを入力した場合はエラー文を表示 alert("駅が正しく入力されていません。このページを再度読み込んでください。"); } // 入力された値が正しければメッセージを出力 if (station >= 1 && station <= 3) { alert("その駅には" + type + "の電車が停まります"); }

電車なびを作るためのswitch構文です。
その中に

var type; ``` という、switch構文の前に一行、このコードが記載されています。 これは、switch構文で出たローカル変数を var type;と書かれているグローバル変数に格納するためのものと考えているのですが。 **__・switch構文の中でreturn result;と最後に記述しなくてもよろしいのでしょうか?__** 恐縮ではございますが、返信していただけると幸いです。 よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miyabi_takatsuk

2020/09/23 09:05

result変数はどこからきたのでしょうか? 構文中には見当たりませんが・・・。
Daregada

2020/09/23 09:29

おそらくswitchとfunctionがごっちゃになっているんだと。
tooju

2020/09/23 09:32

すみません! resultと書いてしまっていました! resultではなく typeでした! return type;と書こうとしていました! ありがとうございます。
tooju

2020/09/23 09:40

switchとfunctionでごっちゃになってました! var type;は、後々使われる素材だよって定義なだけ。 という認識でよろしいですかね?
guest

回答2

0

ベストアンサー

変数は再利用する為に一次格納しておく機構です。

JavaScript

1alert("その駅には" + type + "の電車が停まります");

このコードで変数 type を参照しているのが、変数 type を定義する理由と思われます。

Re: tooju さん

投稿2020/09/23 09:06

think49

総合スコア18189

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tooju

2020/09/23 09:43

var type;は、後々参照されるために定義された。という認識ですかね? ありがとうございます!!
think49

2020/09/23 09:48 編集

そういうことです。 逆に言えば、後に参照しないのなら、変数を定義する必要はありません。 ※「説明変数」の使い方もありますが、コメントで網羅できるので、個人的には使わないですね。
tooju

2020/09/23 09:51

ご丁寧にありがとうございます。
guest

0

returnについてしっかりと学習して下さい。
今回は、switch構文内では、外側スコープtype変数に代入しているため、
returnで値を返す必要はありません。

投稿2020/09/23 09:44

miyabi_takatsuk

総合スコア9555

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問