728x90
1. Pure Function (순수 함수)
함수에서 외부의 값을 참조하면 안 된다.
동일한 인자를 넣었을 때 항상 동일한 결과 값을 내어야 한다.
함수 안에서 외부의 상태 값을 변경하면 절차 지향적 프로그래밍이다.
2. Stateless, Immutability (비상태, 불변성)
함수 인자로 전달된 데이터를 변경하면 안 된다.
멀티스레드 환경에서 사이드 이팩트가 있기 때문이다.
새로운 Object에 결과값으로 만들어서 전달해야 사이드 이팩트를 막을 수 있다.
3. Expressions Only
반복문, 조건문을 사용하지 않고도 배열 내장 메서드를 사용해서 배열에 접근 및 값 변경 가능하다.
4. First-class and Higher-order functions
First-class : 함수를 변수에 할당하거나 인자로 전달, 리턴하는 특징
Higher-order : 함수 자체를 인자로 전달, 함수에서 또 다른 함수 리턴하는 특징
위 두 개의 특징을 가지고 있어야 한다.
반응형
'개발공부 > JavaScript' 카테고리의 다른 글
자바스크립트에서 유용하게 사용할 수 있는 팁 (0) | 2022.02.25 |
---|---|
[Vue.js] 생명주기(Life Cycle) 이해하기 (0) | 2022.02.24 |
[JS] const, let 차이점 (0) | 2022.02.03 |
JavaScript에서 var을 쓰면 안되는 경우 (feat. var hoisting) (0) | 2022.01.18 |
Promise와 Async await (0) | 2022.01.18 |