함수 - 함수의 선언
함수는 여러개의 인자를 받아서 그 결과를 출력한다.
파라미터의 개수와 인자의 개수가 일치하지 않아도 오류가 나지 않는다.
파라미터가 1개일 때, 인자의 개수가 0개라면, 파라미터(매개변수)는 undefined라는 값을 갖게 된다. 값이 할당되지 않았기 때문이다.

실행 결과

선언되어있고 값이 할당되어 있지 않기 때문에 undefiend가 출력된다.

실행 결과

매개변수와 인자값의 개수가 일치하지 않아도 함수는 오류를 발생시키지 않는다.
함수 - 함수표현식
함수는 아래 printName과 같이 표현할 수도 있다.
이렇게 표현하면 함수선언문과 달리 선언과 호출순서에 따라서 정상적으로 함수가 실행되지 않을 수 있다.
예1)

예2)

실행 결과


실행 결과

함수 - 표현식과 호이스팅
자바스크립트 함수는 실행되기 전에 함수 안에 필요한 변수값을 미리 모아서 선언한다. 함수 안에 있는 변수들을 모두 끌어올려서 선언한다고 해서, hoisting이라고 한다.
아래 코드 역시 함수를 값으로 가지지만 어쨌든 name도 변수임으로 끌어올려지게 되고, 값이 할당되기 전에 실행됐음으로 undefined이 할당된 상태이다.
| name(); / /아직 name이 undefined로 할당된 상태이다. var name = function ( ) { } |
name이라는 변수가 존재하고 아직 값이 할당되기 전이므로 name에는 'undefined'이라는 기본 값이 할당된 셈이다.
함수 - 반환값과 undefined
자바스크립트 함수는 반드시 return값이 존재하며, 없을때는 기본 반환값인 'undefined'이 반환된다.
자바스크립트에서는 void 타입이 없다.
참고 : boostcourse https://www.boostcourse.org/web316/lecture/254283/?isDesc=false
웹 프로그래밍(풀스택)
부스트코스 무료 강의
www.boostcourse.org
'boostcource > boostcourse_web programming' 카테고리의 다른 글
| [JavaScript] javascript -5 (0) | 2024.04.11 |
|---|---|
| [JavaScript] javascript -4 (0) | 2024.04.11 |
| [JavaScript] javascript -2 (0) | 2024.04.11 |
| [JavaScript] 자바스크립트 (javascript) (0) | 2024.04.10 |
| (boostcourse) 자기소개 페이지 (0) | 2024.04.10 |