関数間での戻り値(値を返す)
記述:2022/01/24
更新:
>>前記事
■前記事の回答
//【0の処理結果】
//変数:glass(get_glass)の値は、値なし
//変数:sendboxの値は、異常品のため廃棄
//【1の処理結果】
//変数:glass(get_glass)の値は、ぶどうジュース
//変数:sendboxの値は、北海道
■値を戻す
1つの関数が100行を超えてしまう場合は別の関数を準備します。
この記事では「関数:A」から「関数:B」を呼び出して、
関数Bで処理した値Dを、関数Aでも利用したい場合に使います。
この渡す値(値D)のことを戻り値(もどりち)と呼びます。
もちろん、引数と戻り値は同時に利用できます。
■戻り値
「関数名:content」の処理で「関数名:send」を呼び出し、
send内で求めた値を、contentに値を戻します。
値を戻す時は、関数の中で「return 値(変数名でも可)」を記述する。
また、受け取る側は戻り値を入れる変数を宣言する。
//glassの中身で送り先を分ける
//--------------------------------------------------
Function content() {
//変数の宣言
var glass_type = "";
var glass = "";
get_box = "";
//練習問題は、ここの値を変えて考える
glass_type = "2";
if ( glass_type == "1" ) {
glass = "ぶどうジュース"
}
if ( glass_type == "2" ) {
glass = "オレンジジュース"
}
//関数sendをCALLして、変数名:glassの値を渡す
//関数sendから値の返答を受ける。(戻り値)
get_box = send( glass );
if ( get_box == "異常品のため廃棄" ){
//メールを送信する
//メール送信のコードは省略
}
}
Function send ( glass ) {
var get_glass = "";
var sendbox = "";
//glassのままでも使用できるが、
//同じ変数名が多くなると作成、解析の障害となるため
//別の変数へ入れ替えるようにしている。
get_glass = glass;
if ( get_glass == "ぶどうジュース"){
sendbox = "北海道";
} else if ( get_glass == "オレンジジュース" ){
sendbox = "青森";
} else {
sendbox = "異常品のため廃棄";
}
//Returnで関数contentへ値を戻す
Return sendbox;
}
//--------------------------------------------------
//【処理結果】
//変数:glassの値は、オレンジジュース
//変数:get_boxの値は、青森
//メール送信の有無は、無
■練習(回答は次の記事)
以下2パターンの値を求めましょう。
「glass_type = "0";」、「glass_type = "1";」の場合
//【0の処理結果】
//変数:glassの値は、
//変数:get_boxの値は、
//メール送信の有無は、
//【1の処理結果】
//変数:glassの値は、
//変数:get_boxの値は、
//メール送信の有無は、
■条件分岐(if)の書き方
URL
■参考本の紹介
関数間での引数(値を渡す)
記述:2022/01/18
更新:2022/01/24
>>前記事
■前記事の回答
//【処理結果】
//変数:glassの値は、ぶどうジュース
//変数:sendboxの値は、値なし
■値を渡す
1つの関数が100行を超えてしまう場合は別の関数を準備します。
この記事では「関数:A」から「関数:B」を呼び出す場合に、
関数Aで処理した値Cを、関数Bでも利用したい場合に使います。
この渡す値(値C)のことを引数(ひきすう)と呼びます。
■引数
「関数名:content」の処理で「関数名:send」を呼び出すと同時に、
content内で求めた値を同時に渡す。
値を渡す時は、呼出ときの「()」の中に変数を記述する。
また、受け取る側は関数の「()」の中に値を入れる変数を宣言する。
//glassの中身で送り先を分ける
//--------------------------------------------------
Function content() {
//変数の宣言
var glass_type = "";
var glass = "";
//練習問題は、ここの値を変えて考える
glass_type = "2";
if ( glass_type == "1" ) {
glass = "ぶどうジュース"
//関数sendをCALLして、変数名:glassの値を渡す
send( glass );
}
if ( glass_type == "2" ) {
glass = "オレンジジュース"
//関数sendをCALLして、変数名:glassの値を渡す
send( glass );
}
send( glass );
}
Function send ( glass ) {
var get_glass = "";
var sendbox = "";
//glassのままでも使用できるが、
//同じ変数名が多くなると作成、解析の障害となるため
//別の変数へ入れ替えるようにしている。
get_glass = glass;
if ( get_glass == "ぶどうジュース"){
sendbox = "北海道";
} else if ( get_glass == "オレンジジュース" ){
sendbox = "青森";
} else {
sendbox = "異常品のため廃棄";
}
}
//--------------------------------------------------
//【処理結果】
//変数:glass(get_glass)の値は、オレンジジュース
//変数:sendboxの値は、青森
■練習(回答は次の記事)
以下2パターンの値を求めましょう。
「glass_type = "0";」、「glass_type = "1";」の場合
//【0の処理結果】
//変数:glass(get_glass)の値は、
//変数:sendboxの値は、
//【1の処理結果】
//変数:glass(get_glass)の値は、
//変数:sendboxの値は、
■関数の戻り値(値を戻す)
■参考本の紹介
関数の呼び出し
記述:2022/01/05
更新:2022/01/18
>>前記事
■別の関数を呼び出す理由
本ブログ一番最初の記事にも記載していますが、
1つの関数は100行以内で記述しなければいけません。
もし、100行を超えてしまう場合は別の関数を準備し、
呼び出して継続した処理を実現する必要があります。
■関数を呼び出す方法
呼び出したい関数名(この記事では「send」)と();を合わせることで、
関数の呼び出しが可能となる。
//関数contentの実行中に関数sendを呼び出す。
//この時、関数sendで処理は終了する。
//--------------------------------------------------
Function content() {
//変数の宣言
var glass = "";
if ( glass == "" ) {
glass = "オレンジジュース";
//関数:sendをCALL
send();
}
}
Function send () {
var sendbox = "";
sendbox = "日本";
}
//--------------------------------------------------
//【処理結果】
//変数:glassの値は、値なし
//変数:sendboxの値は、日本
▼glassの値なしの解説
「関数:content」で「glass」は宣言され、値も入っているが、
「関数:send」を呼び出す際に値を渡していないため、
処理終了した段階では「glass」に値がないということになる。
■練習(回答は次の記事)
以下のようにif文の前で値が入っていた場合の動きを想定し、
「変数:glass」と「変数:sendbox」の値を求めましょう。
//--------------------------------------------------
Function content() {
//変数の宣言
var glass = "";
glass = "ぶどうジュース"
if ( glass == "" ) {
glass = "オレンジジュース";
//関数:sendをCALL
send();
}
}
Function send () {
var sendbox = "";
sendbox = "日本";
}
//--------------------------------------------------
//【処理結果】
//変数:glassの値は、
//変数:sendboxの値は、
■関数の引数(値を渡す)
■参考本の紹介