CS 공부 - front

[JS] Arrow Syntax vs Function Syntax

Nuri-KSLV-II 2024. 11. 21. 21:52

함수가 객체라는 사실은 다른 프로그랭 언어와 구별되는 자바스크립트의 중요한 특징이다.
- 모던 자바스크립트 딥다이브, 이응모

JS 에서 함수를 호출하는 로직

  • 자바스크립트 엔진은 생성된 함수를 호출하기 위해 함수 이름과 동일한 이름의 식별자를 암묵적으로 생성하고, 거기에 함수 객체를 할당함

일급객체

  • 자바스크립트의 함수는 값처럼 변수에 할당되거나, 프로퍼티 값 또는 배열의 요소가 될 수 있음. 값의 성질을 갖는 객체를 일급객체 라고 함
// 기명 함수 표현식
var add = function foo (x,y) {
 return x+y;
};

// 함수 객체를 가리키는 식별자로 호출
console.log(add(2,5)); //7

// 함수 이름으로 호출 -> ReferenceError
// 함수 이름은 함수 몸체 내부에서만 유효한 식별자
console.log(foo(2,5)); // ReferenceError: foo is not defined

Arrow Syntax

'CS 공부 - front' 카테고리의 다른 글

[JS] Rest Syntax  (0) 2024.11.21
[웹] canonical url  (0) 2023.04.06
[웹] Google AMP  (1) 2023.04.06
[웹] 검색엔진최적화, SEO  (0) 2023.03.09
[웹/최적화]Image Lazy Loading  (2) 2023.02.27