함수 정의, 호출 그리고 콜백

함수

재사용이 가능한 로직

//함수 add 정의
function add(num1, num2){ // add(인자) -> 받아오는 값을 통해서 접근이 가능 
  return num1 + num2;  // 3 + 4
}

cont sum = add(3, 4); //함수 add 호출
console.log(sum); // 7
function add2(num1, num2){ // add(인자) -> 받아오는 값을 통해서 접근이 가능 
  return num1 + num2;  // 3 + 5
}

function print(){
  console.log('print');
}
print(); // 인자를 전달해도 아무런 인풋을 하지 않음

// 변경후 (인자를 전달 받음)
function print(name,age){
  console.log(`${a} ${b}`);
}
print('ellie', 33); 



const result = doMore(3,5);
console.log(result); // 8
  • 함수는 함수가 정의된곳을 가르키고 있다. 다른변수에 할당되면 똑같은 함수를 가르키고 있기때문에 똑같은 함수를 실행하게된다.

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

function divide(num1, num2){
  return num1 / num2;
}
function surprise(operator){
  const result = operator(2,3); // 0.6666 divide 를 수행하는것과 동일
  console.log( result); // 5
}

suprise(); // 에러발생 operator는 지금 undefinded 상태 이기때문
suprise(divide); // divide를 호출하는것과 동일, 함수의 레퍼런스가 복사되서 전달되는 것이다.

Last updated