WEB🔨/자바스크립트

[JavaScript] JS Flow - 함수 선언문과 함수 표현식

최문경 블로그 2020. 6. 12. 21:02
 

Javascript 핵심 개념 알아보기 - JS Flow - 인프런

ES6 이전까지의 자바스크립트 전체를 관통하는 핵심 개념들에 대하여, 전반적인 흐름을 살펴보는 강의입니다. 초급 웹 개발 프로그래밍 언어 Javascript 알고리즘 온라인 강의 핵심개념을 알아보는

www.inflearn.com

함수 선언문과 함수 표현식의 차이점

함수 선언문과 함수 표현식의 차이점은 할당을 하느냐 하지 않느냐 이다.

//함수선언문
function a() {
	return 'a';
}

//기명 함수표현식
var b = function bb() {
	return 'bb';
}

//익명 함수표현식
//변수 c선언
//익명함수 선언
//변수 c에 익명함수를 할당
var c = function() {
	return 'c';
}

 

함수 선언문의 문제점

아래 처럼 협업을 할 때 아래에 있는 함수 선언문이 위에서 작성한 함수 선언문을 덮어 쓸 수도 있다.

//내가 쓴 함수 선언문
function sum(a, b) {
	return a + '+' + b + '=' + (a+b);
}

sum(1, 2);

// 중략...

//동료가 쓴 함수 선언문
function sum(a, b) {
	return a + b;
}

sum(3, 4);

 

안전하고 예측가능한 코딩을 위해서 함수 표현식을 사용하자.