본 시리즈는 인프런 강의 함수형 프로그래밍과 JavaScript ES6+ ( 지식 공유자 : 유인동 님 ) 의 강의를 수강하면서 내용을 제 방식대로 포스팅하는 글입니다.
기존의 리스트 순회
// es5 이하 버전
var numList = [1, 2, 3];
for (var i = 0; i < list.length; i++) {
console.log(numList[i]); // 1 2 3
}
var str = "abc";
for (var j = 0; j < str.length; j++) {
console.log(str[j]); // a b c
}
// 기존의 for 문은 length 라는 프로퍼티에 의존해서
// 숫자라는 키로 순회하도록 i 를 증가시켜주며 리스트를 순회했었다.
// es6+
for (const a of numList) {
log(a); // 1 2 3
}
for (const b of str) {
log(b); // a b c
}
문법도 훨씬 간결해졌고, 보다 선언적이고, 어떻게 순회하는지 구체적 명령적 기술보다는
선언적으로 for of 로 리스트 안의 값을 순회하도록, 좀더 간결하게 변경되었다
그렇지만 단순히 복잡한 for 문을 간결하게 만든것 이상의 의미가 있다.
es6 이라는 언어가 개발자에게 어떤 규약을 열어주었고, 어떻게 순회에 대해서 추상화했고
어떻게 사용하는지에 대해 상세히 알아볼 필요가 있다.
'Javascript' 카테고리의 다른 글
사용자 정의 이터러블, 이터러블 / 이터레이터 프로토콜 정의 - JS ES6+ 함수형 프로그래밍 - 6 (0) | 2022.09.09 |
---|---|
Array, Set, Map 을 통해 알아보는 이터러블 / 이터레이터 - JS ES6+ 함수형 프로그래밍 - 5 (0) | 2022.09.08 |
고차 함수 - JS ES6+ 함수형 프로그래밍 - 3 (0) | 2022.09.08 |
일급 함수 - JS ES6+ 함수형 프로그래밍 - 2 (0) | 2022.09.06 |
평가와 일급 - JS ES6+ 함수형 프로그래밍 - 1 (0) | 2022.09.06 |