250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- JavaScript
- 타입스크립트
- 타입스크립트 props
- 내배캠 프로젝트
- 파이썬 딕셔너리
- 리액트 훅
- useState
- 리액트
- 코딩테스트
- 파이썬 replace
- 리액트 공식문서
- React Hooks
- REACT
- 프로그래머스
- 파이썬 반복문
- tanstack query
- 파이썬 for in
- 리액트 프로젝트
- 파이썬 slice
- 한글 공부 사이트
- typeScript
- 내일배움캠프
- Next 팀 프로젝트
- 파이썬 for
- useEffect
- 내일배움캠프 프로젝트
- 타입스크립트 리액트
- 파이썬 enumerate
- 자바스크립트
- 내일배움캠프 최종 프로젝트
Archives
- Today
- Total
sohyeon kim
[JS] First Class Object 일급 객체 함수, 고차함수 ,함수 활용 본문
728x90
일급 객체로서의 함수를 활용해 보자~
💡 변수에 함수 할당
const sayHello = function () {
console.log("Hello!");
};
💡 객체의 프로퍼티로 할당
const person = {
name: "aoto",
age: 20,
isMarried: false,
sayHello: function () {
console.log(`Hello, My name is ${this.name}`);
},
};
person.sayHello(); // Hellow, My name is aoto
💡 배열의 프로퍼티로 할당
const myArr = [
function (a, b) {
return a + b;
},
function (a, b) {
return a - b;
},
];
console.log(myArr[0](2, 3)); // 5
console.log(myArr[1](3, 10)); // -7
💡 함수를 인자로 다른 함수에 전달 가능
콜백함수 : 매개변수로 쓰이는 함수
고차함수 : 함수를 인자로 받거나 return 하는 함수
function callFunction(func) {
// 매개변수 = 함수
func();
}
callFunction(sayHello);
// 함수 반환 가능 (고차함수)
function createAdder(num) {
return function (x) {
return x + num;
};
}
const addFive = createAdder(5);
// const addFive = function (x) {
// return x + 5;
// };
console.log(addFive(10)); // 15
function multiplyBy(num) {
return function (x) {
return x * num;
};
}
const multiplyByTwo = multiplyBy(2);
// const multiplyByTwo = function (x) {
// return x * 2;
// };
console.log(multiplyByTwo(10)); // 20
const multiplyByThree = multiplyBy(3);
// const multiplyByThree = function (x) {
// return x * 3;
// };
console.log(multiplyByThree(20)); // 60
function add(x, y) {
return x + y;
}
const addEach = add(multiplyByTwo(10), multiplyByThree(20));
console.log(addEach); // 80
728x90
반응형
'JavaScript' 카테고리의 다른 글
[JS] class 클래스 사용법, get & set, Static 정적 메소드 (1) | 2024.01.04 |
---|---|
[JS] Map 맵 : new Map(), map.set(), map.get() (1) | 2024.01.02 |
[JS] Arrow Function 화살표 함수, 함수 표현식, this 우회 (0) | 2024.01.02 |
[JS] 기본형과 참조형 (1) | 2024.01.02 |
[JS] for in 문 & for of 문, 반복문 (2) | 2024.01.02 |