궁금한게 많은 코린이의 Developer 노트
함수의 종류 본문
함수의 종류에는 세가지로 분류할 수 있다.
익명함수: 말 그대로 이름이 없는 함수이다.
익명 함수
let 함수 = function() {
console.log("오늘은 햄버거를 먹고 싶다.");
};
선언적 함수: 이름을 선언하여 선언적 함수!
선언적 함수
function 함수() {
console.log("안녕하세요.");
}
화살표 함수: ( ) => { }
화살표 함수
let 함수 = () => {
console.log("안녕하세요.");
}
그렇다면 이것들엔 어떤 차이점이 있을까?
익명함수와 선언적 함수의 차이(호이스팅 순서)
호이스팅 순서: 선언적함수 > 익명함수
자바스크립트에서 호이스팅을 할 때 선언적함수가 익명함수보다 먼저 호출되어진다.
이름을 명시한 함수를 먼저 실행하기 때문이다.
익명함수와 화살표 함수의 차이(this가 가리키는 것)
익명: 최상위 객체
(function(){
console.log(this); // global 최상위 객체
})();
화살표 함수: 자기자신
(() => {
console.log(this); // {}
})();
화살표 함수의 코드에서 { }란 결과가 나왔다.
이것은 자기자신을 가리키는 것이다.
익명에서의 this는 : 최상위 객체 를 가리키고,
화살표함수에서의 this는 : 자기자신을 가리킨다.
이미 알고 있는 개념이지만 한번 더 정리하는 중..
같은 내용을 다른 매체나 사람에게 들었을 때 이해가 더욱 깊게 되는 것 같다.
오늘도 (개발) 공부 하는 사람들..모두 화이팅!
'Javascript' 카테고리의 다른 글
매개변수와 인수의 개념 (0) | 2023.09.26 |
---|---|
자바스크립트 -템플릿 리터럴 : '백틱'을 왜 사용하는 걸까? (0) | 2023.09.25 |
헤더 인디게이터 바 만들기 (with Javascript)+ 가로스크롤 + 스크롤 시밑줄 그어지는 효과 (0) | 2023.06.29 |
BOM DOM에 대한 이해 (0) | 2023.05.13 |
사용자 정의 함수 개념 정리 (0) | 2023.05.05 |