![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
下記サンプルコードのreturn result;というのはどこに値を返しているのでしょうか。
また、return alert(result);とすれば値が表示されるようになりますが、
この場合returnは必要なのでしょうか。returnの使い方がいま一つ分かりません。
サンプルコードはhttps://developer.mozilla.org/ja/Core_JavaScript …からとってきました。
<script>
function myConcat(separator) {
var result = "";
// 区切りでない引数を反復する
for (var i = 1; i < arguments.length; i++)
result += arguments[i] + separator;
return result;
}
// "red, orange, blue, " を返す
myConcat(", ", "red", "orange", "blue");
// "elephant; giraffe; lion; cheetah; " を返す
myConcat("; ", "elephant", "giraffe", "lion", "cheetah");
// "sage. basil. oregano. pepper. parsley. " を返す
myConcat(". ", "sage", "basil", "oregano", "pepper", "parsley");
</script>
No.2ベストアンサー
- 回答日時:
こんにちは。
関数内の処理の終了時、呼び出し元に戻すのがreturnになります。
このサンプルスクリプトの場合は
var value = myConcat(", ", "red", "orange", "blue");
にするとvalueに関数内のresultの内容が返ってきます。
myConcat(", ", "red", "orange", "blue");
のみで呼び出した場合、戻ってきた値が使われていないので必要あるの?という疑問が出てきます。
例えば入力チェク等だとtrueかfalseを返したりします。
function isCheck ( val ) {
return val === '';
}
var isFlag = isCheck ( '' );
にすれば呼び出し元のisFlagにはval===''で評価した値が返ってきます。(この場合はtrue)
あとは関数の処理を抜ける場合にこんな使い方もあります。
function isCheck ( val ) {
if ( val === '' ) return;
alert ( val + 'は空文字ではありません' );
}
この場合valが空白だとisCheckの処理を中止して呼び出し元に戻ります。
returnは
1)関数内で処理した戻り値を変数として格納する。
function tashizan(n1,n2){
return n1+n2;
}
var val=tashizan(1,1);
alert(val);//2
2)入力チェクに使える。
function isCheck ( val ) {
return val === '';
}
var isFlag = isCheck ( '' );
3)関数内での処理を中止させ、呼び出し元へ戻させる。
function isCheck ( val ) {
if ( val === '' ) return;
alert ( val + 'は空文字ではありません' );
}
の3つの使い方があるのですね。
なんとなく分かりました。使い慣れて理解を深めていきたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コピペを禁止するtextarea
-
半角英数字のみの入力にエラー...
-
onsubmitイベントにfalseを返し...
-
return trueとreturn falseの用...
-
フォームの入力チェックをする...
-
サイト内にGoogleサイトを表示...
-
追加ボタンを押した際に ok ボ...
-
shiftキーを押しながらコマンド...
-
VBAをJavaScriptに変換したいです
-
onchangeイベントを強制的に発...
-
コマンドボタンでショットカッ...
-
スマホのフォームでのselect複...
-
新しくフォルダを作成したい
-
ファイル選択と同時にアップロ...
-
JavaScriptでリストボックスを選択
-
プルダウンで選択すると、DBの...
-
フォーカスが外れたときの動作...
-
出発駅A、到着駅Bを選択すると...
-
javascriptで連動するセレクト...
-
【UWSC】HTML内のある部分を抽...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
return trueとreturn falseの用...
-
slickのレスポンシブ > center...
-
COBOLの数字チェック
-
コピペを禁止するtextarea
-
JavaScriptde途中で、「exit」...
-
未入力のラジオボタンに、alert...
-
ラジオボタンのNullチェック
-
数式から不要なカッコを取り除...
-
テキストボックスに数字しか入...
-
半角英数字のみの入力にエラー...
-
フォームの入力チェックをする...
-
ツリービューのチェックボック...
-
変数の値によってsubmit後の動...
-
ドロップダウンリストボックス...
-
ドラッグ&ドロップ禁止について
-
Visual Studioのデザインでの非...
-
正規表現で複数マッチ条件で悩...
-
入力された日付の正規表現の仕...
-
テキストボックスをEnterキーで...
-
度胸試しのJavaScript
おすすめ情報