15. function


いずれかの機能を担当するのは関数です.
同様の操作を実行するか、いくつかの条件のために作成された複数行のコードを実行します.
関数単位で作成できます.
また、関数を使用して、同様の操作を実行するコードを減らすことができます(繰り返し使用可能).
前述の組み込み関数は、alertpromptlogなどである.
これらの関数はすべて内部で複数のコードを実行した結果で、私たちは1行しか使いません.

関数宣言


関数の宣言方法は次のとおりです.
function 함수명(파라미터) {
  해당 로직
  return 리턴값; // 생략하면 undefined가 리턴됨.
}
  • 関数はfunctionというキーワードを使用します
  • 関数の名前を書き出します.
  • 関数を記述するために必要なパラメータ.
    ->複数のパラメータがある場合は、,で区切ります.
  • この関数を内部で記述する論理
  • 関数の終了後に返される値を定義します.
  • 関数の実行


    関数名に()を付けて、関数の実行を表します.
    // 함수의 선언
    function showNumber(number) {
      console.log(number);
    }
    
    // 함수의 실행
    showNumber(4);
    showNumber(10);
    関数を一度宣言すると、パラメータの変更に応じてコンソールに印刷できます.
    このように1つの関数は、重複する複数のローを減らすことができます.

    ゾーン変数


    関数で宣言される変数は지역 변수です.
    この変数は、関数が終了したときにのみ使用できます.
    この変数のライフサイクルも終わりました.
    function oneNumber() {
      let number = 1;
    }
    oneNumber();
    console.log(number); // undefined
    上で、関数内の数値は領域変数です.
    numberは領域変数であり、グローバル(global)では使用できません.
    コンソールで数字を押すと未定義になります
    let number = 10;
    function plusNumber() {
      number++;
    }
    plusNumber();
    console.log(number); // 11
    この関数は、関数内に変数を作成するのではなく、外部で宣言されたnumber関数を使用します.つまり、グローバル変数(グローバル変数)が使用されているため、この値は関数内でも関数外でも使用できます.また、関数内で変更することもできます.
    同じ名前の変数が関数内で宣言されている場合、関数内の変数は内部変数を指します.

    パラメータ


    各変数が受ける変数は、領域変数です.
    let num1 = 10;
    let num2 = 20;
    
    function addNum(one, two) {
      one++;
      two++;
    }
    addNum(num1, num2);
    console.log(num1, num2);  // 10, 20
    上記のコードでは、addnum関数によりnum 1とnum 2が1増加する可能性がありますが、コンソールでは同じです.
    これは,パラメータをaddnumに渡した瞬間,変数内の値がoneとtwoの間복사にあるためである.
    すなわち、num 1およびnum 2は、複製値が割り当てられた領域変数1および2の値を増加させるため、影響を受けない.

    パラメータのデフォルト値の設定


    パラメータが入力されていない場合、この変数の値は未定義です.
    function print(text) {
      console.log(text);
    }
    
    print(); // undefiend가 콘솔에 출력
    前述したように、パラメータに値が得られない場合、変数は未定義です.
    ここでは、デフォルト値を未定義の値ではなく別の値に設定できます.
    function print(text = 'hello') {
      console.log(text);
    }
    print();   // hello
    print('code');  // code
    前述したように、列挙変数に値を指定すると、その値は定義解除されます.
    指定した値で表示されます.

    戻り値(return)


    中学の時に関数を習った時に見た絵があります.

    値を入力すると、この機能は実行後に値を返します.
    プログラミング関数でも同じです.どの関数にも戻り値があります.
    関数には、返されるreturnを示すキーワードが使用されます.
    function sumNum(num1, num2) {
      return num1 + num2;
    }
    let result = sumNum(10, 20);
    console.log(result); // 30
    上記のように、returnキーワードを使用してnum 1とnum 2の値を返します.
    sumnumの位置を呼び出して対応する論理を実行し、num 1とnum 2の値を返し、変数resultはこれらの値を受け入れます.
  • 戻り値が無視された場合、デフォルトでは、関数はundefinedを返します.
  • コードの実行中にreturnキーに遭遇し、returnを実行すると関数が終了します-->returnの後のコードは動作しません.
  • returnの後に複数の行を書くことはできません.
    -->複数行を書き込むには、()を使用して先頭と末尾を囲みます.
  • 関数の名前


    私たちは勝手に関数に名前をつけることはできません.
    関数の名前は、その関数機能の注釈とある程度同じです.
    名前を見て、関数がどのような機能を持っているかを推測する必要があります.
    これは추상화と言います.
    以下のようなネーミング方法が提案されています.
  • show~~->何を表示
  • get~~->任意の値を返す
  • calc~->計算
  • create~->何を生成
  • check~~->boolean値をチェックして戻る