기록
JavaScript Engine - 1 본문
코드가 실행되기 전에 어떻게 돌아갈지 정확하게 알기 위해 다음 강의를 듣고 정리한 내용
출처: https://youtu.be/NS1cIsWlFGI
1. 함수와 함수 호출
// 함수 선언
const add = (a, b) => a + b;
console.log(add(3, 5)); // 8
function calculator(func, a, b) {
return func(a, b);
}
console.log(calculator(add, 3, 5)); // 8
// func 파라미터 자리에 함수 호출이 아니라 함수를 넣어야 함
// 만약 헷갈린다면, 머릿 속으로 함수 호출을 넣었을 때, 그 함수 호출 넣은 자리에 그 함수 리턴값을 넣어보면 됨
// 그 함수의 리턴값이 없으면 함수 호출 자리에 undefined를 넣은 셈
// 화살표 함수는 return 부분을 주의해야 한다.
// x => {return x * x} 는
// x => x * x 와 같이 중괄호와 return을 생략할 수 있다.
// 함수 바디가 한 줄의 구문일 때 가능하다.
// 고차함수일 경우는 다음과 같다.
const onClick1 = () => () => {
console.log('hello');
};
const onClick2 = () => {
return () => {
console.log('hello');
};
};
// 다만 객체 반환 시 return을 생략할 때는 소괄호를 사용한다.
// () => { return { a: 1 }; }
// () => ({ a: 1})
'JS > etc' 카테고리의 다른 글
JavaScript Engine - 3. this (0) | 2022.03.23 |
---|---|
JavaScript Engine - 2(호출 스택, 스코프, TDZ, 선언, 초기화...) (0) | 2022.03.22 |
[복습] 자바스크립트 동작 원리 (0) | 2022.03.17 |
import export { } (0) | 2021.03.11 |
자바스크립트 개념 다시 - 블로킹/논블로킹, json, ajax, REST API, promise (0) | 2021.03.10 |
Comments