//명령형
function double(arr) {
let results = [];
for (let i = 0; i < arr.length; i++) { //어떻게 처리하는지에 대한 묘사
results.push(arr[i] * 2);
}
return results;
}
//선언형
function double(arr) {
//ES5 배열 다루는 함수들
//.map() 현재 배열을 순환해서 새로운 배열을 만드는 함수
//forEach() 배열 요소 하나하나를 순환하는 함수
//.reduce() 배열 요소들을 쭉 돌면서 특정 값을 누적시키는 함수
return arr.map((number) => number * 2); //무엇을 원하는지에 대한 묘사
//map이라는 어떤 규칙을 사용해서 함축할 수 있다.
}
훨씬 함축적으로 깔끔하게 표현할 수 있기 때문에 명령형 보다는 선언형 프로그래밍 방식을 지향해야 한다. 특히 UI를 만드는데 선언형 프로그래밍 방식이 중요하다.
⭐ 외부에서 개입할 수 있는 요소를 최소화시키고 독립적으로 돌아갈 수 있으면서 어떠한 상태를 기반으로 추상화 되어있는 UI를 만드는것이 프론트엔드 개발자로서 중요하다