명령형(=절차형) VS 선언형(=함수형)
UI를 만들 때 명령형보다 선언형으로 해야하는 이유
대표적인 선언형 프로그래밍 방식 : HTML, SQL
: 배열을 받아서 원소를 각각 2배로 만들어 리턴하는 함수
function double(arr) {
let results = [];
for (let i = 0; i < arr.length; i++) {
if (typeof arr[i] === 'number') {
results.push(arr[i] * 2);
}
}
return results;
}
🔴 인자가 숫자인지 확인하는 if문( 후에 유지보수나 확장이 어려울 수 있다) (선언형과 비교)
function double(arr) {
return arr.filter(param => typeof param === 'number')
.map(number => number * 2);
}
🔴반면 선언형은 filter로 인자의 type을 쉽게 확인
선언형은 코드를 딱 봤을 때 어떤 코드인지 간단하고 명료하게 알 수 있다. 반면, 명령형은 코드가 더 복잡해지거나 많아지면, 버그가 만들어질 확률이 크다.