[Javascript]関数の基本概念


const num1 = 12;
const num2 = 23;

function sum(num1, num2) {
  return num1 + num2;
}

sum();
上のコードはjavascriptを2週間勉強した後、なぜ実行できないのかを考え始めたコードです.
実際には、DOM要素を使用して変数名を付けたコードですが、よく考えてみると、そのコードと何の違いもありません.最終的には解決できず、補習後に基本的なものを逃したと感じ、関数の基本的な概念を整理すべきだと感じた.
上記のコードは、変数とパラメータ(parameter)とパラメータ(parament)の概念を理解しているときにまだ分からないコードなので、基本概念を再度まとめます.
const variable1 = 12;
const variable2 = 23;
function function_name(parameter1, parameter2) {
	return  parameter1 + parameter2;
}
function_name(argument1, argument2);
変数(variable)、パラメータ(parameter)、パラメータ(parament)を表します.
  • 変数とは、上記のように割り当てられた値です.
  • パラメータは、関数内の位置に入る数をどのように処理しますか.定義時に使用する変数は、
  • と呼ばれます.
  • パラメータとは、関数を使用するときに定義されたパラメータの位置に配置される値です.
  • 上のコードは整理のために書かれたコードで、実際に使用する場合
    const variable1 = 12;
    const variable2 = 23;
    function function_name(parameter1, parameter2) {
    	return  parameter1 + parameter2;
    }
    function_name(variable1, variable2);
    function_name(12, 23);
    これにより、変数または値がパラメータの位置に配置されて使用されます.
    Arrow関数.
    (parameter1, parameter2) => {
      return parameter1 + parameter2;
    }
    名前を付けずに直接関数の位置に置くこともできます.
    function_name = (parameter1, parameter2) => {
      return parameter1 + parameter2;
    }
    function_name(argument1, argument2);
    このように関数を関数として割り当てることもできます.
    関数を使用するときに同じ名前を使用する場合は、関数の値を定義するパラメータを使用することに注意してください.
    const num1 = 12;
    const num2 = 23;
    
    function sum() {
      return num1 + num2;
    }
    
    sum();
    このようにparameterを使用しない場合、num 1とnum 2はグローバル変数になるので、それらを使用できます.
    パラメータが設定されていない場合は、関数を適用できません.
    変数とパラメータの名前を分けて割り当て、パラメータで適用すればいいです
    なぜダメなのか悩んだコードです.パラメータに変数名と同じ名前を使用...
    const thisIsPw = document.getElementById('password');
    const thisIsButton = document.getElementsByClassName('login-btn')[0];
    const thisIsRepw = document.getElementById('re-password');
    const alertP = document.getElementsByClassName('alert')[0];
    
    thisIsRepw.addEventListener('keyup', (thisIsPw, thisIsRepw) => {
      if (thisIsPw.value !== thisIsRepw.value) {
        alert('비밀번호가 일치하지 않습니다');
        alertP.innerHTML = '비밀번호가 일치하지 않습니다';
        return;
      } else {
        alertP.innerHTML = "";
      }
    });