함수 표현식
✔️ 함수를 만들고 그 값을 변수에 할당하고 싶을 때 표현식으로 사용.
//함수 선언 -> sayHi라는 함수 선언시 이 함수는 sayHi라는 변수에 저장된다.
function sayHi(){
alert('hi');
}
//함수 표현식
let sayHi = function(){
alert('hi');
}
sayHi(); //hi
// 함수 복사
let func = sayHi;
func(); //hi
콜백 함수
✔️ 함수를 함수의 인수로 전달하고
✔️ 인수로 전달한 그 함수를 나중에 호출
function ask(question, yes, no){
if(confirm(question)) yes()
else no();
}
function showOk(){
alert('동의하셨습니다.');
}
function showCancel(){
alert('취소 버튼을 눌렀습니다.');
}
aks('동의하십니까?', showOk, showCancel);
함수 선언문 vs 함수 표현식
✔️ 함수 선언문은 스크립트 준비 단계에서 미리 실행되기 때문에 어디에서든 사용할 수 있다.
✔️ 함수 표현식은 실제 코드가 실행되었을때 사용할 수 있다.
✔️ 함수 표현식보다는 함수 선언문을 사용하는 게 더 좋다. 가독성이 좋고 활용범위가 넓어지기 때문.
요약
- 함수의 값을 변수에 할당하고 싶을 때 함수 표현식을 사용한다.
- 콜백 함수 : 함수의 인수에 함수를 넣었을 때 그것을 콜백 함수라 한다.
- 함수 선언문은 자바스크립트 준비 단계에서 실행되기 때문에 어디에서든 사용 가능하다.
- 게다가 함수로써의 가독성도 좋기 때문에 표현식보다는 선언문으로 사용하는게 더 좋다.
Reference
반응형
'Frontend > JavaScript' 카테고리의 다른 글
[Javascript] 문자열 메소드 (0) | 2022.01.04 |
---|---|
[Javascript] 화살표 함수 (0) | 2022.01.04 |
[Javascript] 함수 (0) | 2022.01.04 |
[Javascript] Class - static(정적 메서드, 정적 프로퍼티) (0) | 2022.01.03 |
[Javascript] 클래스 상속 (0) | 2021.12.30 |