javascriptのreturnとは
- 2021.01.27
- 01_技術ブログ JavaScript
- #Javascript
最近学んでいてちょっと詰まったところの記録です。
Javascriptのreturn。あれ、どんな意味だっけ・・・となったので、忘れないようにメモ。(※初心者の記録です)
returnには、2つの意味があります。
戻り値の意味と、処理を終了させることができる。
戻り値の場合
戻り値とは、関数などの処理で返される値のことです。
実例は以下。
コード↓
1 2 3 4 5 6 7 8 | //returnの確認 function hello(name){ return "Hello!"+ name +"だよ"; } console.log(hello("dyna")); // |
上記のコードでは、function hello(name){~ で作っている
“Hello!”+name(引数)+”だよ”; をconsole.logで表示させたいと思います。
この場合、画面表示はこうなります↓
これがもしreturnがない場合、
undefined となります。
returnを使うことによって、“Hello!”+ name +”だよ” を戻り値として、関数の外へ値を引き渡しています。そのため、console.log(hello(“dyna”)); で、functionの中身が表示できるようになっています。
関数のスコープについてはこちらの記事もご参考ください。
例えば計算の数字をreturnで返してみたいと思います。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | //数字 function addNumber(a,b){ var num = a+b; return num; } console.log(addNumber(5,9));//5+9=14 var num2 = addNumber(3,4);//変数に格納してもOK console.log(num2);//7が表示 //0にしてみる function zero(){ return 0;//戻り値は0 } var a = zero(); console.log(a);//0を表示 console.log(zero());//そのものを表示してみても0 // |
function addNumber(a,b)は var num =a+b; とあり、a,bに入力された値をnumに格納しています。
表示結果を見てみます。
1つめのconsole.log(7行目)は 5+9 = 14で 14が表示されています。
※return num で値を返しています。num = a+bの計算結果。
また、var num2のように変数に格納しても使用できます。
(※2つ目のconsole.log(num2)(9行目)は 3+4=7を表示)
また、function zero()のように、0を戻り値として表示してみた場合、4つ目、5つ目のconsole.logは0を表示します。
テキスト表示の場合も、
1 2 3 4 5 6 7 8 9 10 11 | //text確認 function text(e,d){ return e + d; } var b = text("ネコ派","犬派"); console.log(b); var c = text("私は","狼派"); console.log(c); // |
return で e+dを返り値としているので、e=”ネコ派” ,d=”犬派”として表示したconsole.log(b)は”ネコ派犬派”と表示されます。
cは別の値を格納したので、”私は狼派”となります。
狼ってかっこいいですよね・・・(どーでもいい)
こんな感じで、returnは関数内で指定した戻り値を、利用できるようにしてくれるってことですね。
処理の終了の場合
1 2 3 4 5 6 7 8 9 10 | //停止処理 function stop(){ return "no"; alert("stop");//return以降は実行されない } var s = stop(); console.log(s); // |
上のコードを見てわかるように、stop関数内でreturnを記載します。
分かりやすいように”no”を入力しておきます。
これを確認すると、アラートは実施されず、noだけ表示されます。
関数内でreturnを書いた後の処理は実行されない、つまり処理がそこで停止する、ということになります。
returnを使うことで「ある関数の値を別の関数に使う」ことや、ある関数の値を「色々なところで使いまわせるようになる」ので、とても便利になります。
※初歩記事ですが読んでくださってありがとうございます。訂正等ありましたら、お問い合わせからお願いいたします。
https://notetoself-dy.com/contact/
JS楽しいですね・・・・
色々勉強して自分の思い通りのシステムを作れるようになりたいですね!!
実は私事ですが、最近子供が骨折してしまったので、ブログがなかなか書けません・・・( ;∀;)
のんびりペースで進めていきます。