자바스크립트_기초_2.16

HwiJeongLee·2021년 8월 27일
0

자바스크립트

목록 보기
20/28

함수 표현식

자바스크립트는 다른 언어들과 다르게 함수를 특별한 종류의 값으로 취급합니다.

// 함수 선언
function sayHi(){
	alert("hello!");
}

// 함수 표현식
var sayHi = function(){
	alert("hello!");
}

함수 표현식은 함수를 생성하고 변수에 값을 할당하는 것처럼 함수가 변수에 할당되었습니다.
함수가 어떤 방식으로 만들어졌는지에 관계없이 함수는 값이고 따라서 변수에 할당할 수 있습니다.
하지만 함수명 뒤에는 ()가 있어야 실행 가능하기에 특별한 종류의 값입니다.

콜백 함수

function ask(question, yes, no){
	if(confirm(question)) 
    	yes();
    else
    	no();

function showOk(){
	alert("동의하셨습니다.");
}

function showCancel(){
	alert("취소합니다");
}

ask("동의하시나요?", showOk, showCancel);

이 때 ask의 인수 showOk, showCancel을 콜백함수, 콜백 이라고 합니다.

함수 표현식 vs 함수 선언문

함수 표현식

함수는 표현식이나 구문 구성 내부에 생성됩니다.

함수 표현식은 실제 흐름이 해당 함수에 도달했을 떄 함수를 생성합니다. 따라서 실행 흐름이 함수에 도달했을 떄부터 해당 함수를 사용할 수 있습니다.

함수 선언문

함수는 주요 코드 흐름 중간에 독자적인 구문 형태로 존재합니다.

함수 선언문은 함수 선언문이 정의되기 전에도 호출할 수 있습니다.

profile
초보 개발자의 개발 공간

0개의 댓글