함수에 대해 소개하는 아주 기초적인 부분이지만, 혹시나 내가 놓친 부분이 있을 수 있는데다 기초를 잘 이해하는 것이 가장 중요하니 넘기지 않고 들었다.
// 가령 똑같은 기능을 여러번 반복하는 코드를 작성한다 해보자.
const num1 = 1;
const num2 = 2;
const result = num1 + num2;
console.log(result);
const num3 = 1;
const num4 = 2;
const result2 = num3 + num4;
//... 이렇게 계속 쓸 순 없잖아?
// 그러니까 특정 기능을 재사용할 수 있는 함수로 만드는거야!
function add(a, b) { // 함수 호출 전까지 a,b는 undefined.(스코프랑 연결)
return a + b;
};
const sum = add(3, 4);
함수도 객체이기 때문에 복사 시 call by reference가 된다.
function add(num1, num2) {
return num1 + num2;
}
function divide(num1, num2) {
return num1 / num2;
}
function surprise(operator) { //operator 인자에 add 함수의 reference 가 전달된다.
const result = operator(1, 2); // === add(1, 2), divide(1, 2)
console.log(result);
}
surprise(add); // 함수 호출은 함수 선언부에서 하자.
surprise(divide);
'개발 공부 > 자바스크립트' 카테고리의 다른 글
[엘리의 드림코딩 JS 보충] 18. 클래스 예제와 콜백함수 최종 정리 (0) | 2022.12.06 |
---|---|
[엘리의 드림코딩 JS 보충] 17. Boolean의 모든 것, &&연산자 (0) | 2022.12.06 |
[엘리의 드림코딩 JS 보충] 15. 변수(primitive vs object) (0) | 2022.12.06 |
[엘리의 드림코딩 JS] 14. 자바스크립트 함수 기본편 (0) | 2022.12.06 |
video scroll animation에 대해 (0) | 2022.12.06 |