함수 (포기하지말자)

김민재·2021년 7월 18일
0

Gotcha JavaScript!

목록 보기
21/45

JS에서 함수가 어떻게 전달 되는지

  1. 함수 선언 & 호출

함수는 딱 두 가지만 이해하자

  • 함수를 선언하는 것

  • 함수를 호출하는 것

  • 함수를 선언
    -function 키워드 이용하여 원하는 함수명을 정의해준다.
    -함수명(), ()괄호 안에 함수가 어떤 값을 전달 받아오는지, 전달받는 인자를 정의하는 부분
    -{}, {}블록으로 실제로 함수 안에서 어떤 코드가 동작하는지 작성하는 부분으로 나눠진다.

  • 함수를 호출
    선언한 함수를 호출하기 위해서는 함수명();를 붙여서 호출할 수 있다.

  1. 값을 리턴하는 함수
    함수에는 두가지 타입이 있다.
  2. 단순히 함수의 {}안에 있는 어떠한 기능을 수행하하고 끝나는 함수
function doSomething(){
  console.log('hello');
}
  1. 어떠한 계산을 하고 특정한 값을 전달하는 함수
    자바스크립트는 타입이 없기 때문에 a 와 b 변수를 이용해서 접근할 수가 있다.
    return 키워드를 이용해서 계한을 한 특정값을 전달할 수 있다.
    리턴값이 있는 함수의 경우 호출 시에는 함수가 a, b를 받기 때문에 ()안에 해당 값을 넣어준뒤 함수가 전달한 리턴 값을 변수에 다시 저장해줘야한다.
    이러한 부분은 변수를 정의함과 동시에 어떠한 값을 할당하는데, 그 값이 바로 함수이며
    호출한 함수에 정의된 코드 블록 안에서 전달하는 리턴값이 할당이 된다,.
function add(a, b){
  const sum = a + b;
  return sum;
}

const result = add(3,4)
console.log(result)
  1. 언어 공부 방법
    콘솔 로그를 이용해 조금씩 로그를 넣으면서 값을 확인하면서 배우는 것을 추천

  2. 함수를 인자로 전달
    함수를 전달할 때는 함수의 이름만 이용해서 전달해야한다.

function doSomething(add){
  console.log(add);
  const result = add(3,4);
  console.log(result)
}

function add(a, b){
  const sum = a + b;
  return sum;
}

doSomething(add);
  1. 선언과 호출 복습
  • 선언을 할 때는 어떤 값을 전달받아 올 건지 인자들을 정의하고 나서 코드 블럭을 작성한다. 선언만 해놓으면 작성한 코드 블럭은 수행되지 않는다.
  • 정의한 선언 함수를 수행하기 위해서는 함수를 호출 해야 된다. 호출위해서는 함수 이름 옆에 괄호를 이용해서 함수에서 원하는 정의된 인자값을 전달하면서 호출한다.

이름 자체는 함수를 가리키는 함수 자체이다.
괄호를 쓰지않고 함수 명만 다른 함수의 인자로 전달하던지 다른 변수에 할당 하게 되면 함수 자체를 가리키게 되는 것이다.

  1. 함수를 변수에 할당
    새로운 변수에다가 함수명을 할당하게되면 함수 자체가 나온다. 이 새로운 함수를 호출하기 위해서는 다시 함수명(), ()괄호를 이용하여 인자를 전달해줘야한다.
function add(a, b){
  const sum = a + b;
  return sum;
}
const addFun = add;
addFun(1,2)
  1. 마치며
    -함수 선언하고 호출 할 땐 항상 ()!
    -()를 쓰지 않고 함수 이름만 어디에가 할당하거나 전달하면 함수 자체를 전달하는 것이다.
    -함수를 호출할 때는 함수마다 정의된 인자값을 정확하게 전달해야한다.
profile
자기 신뢰의 힘을 믿고 실천하는 개발자가 되고자합니다.

0개의 댓글