함수형 프로그래밍에서 리스트 순회는 매우 중요하다. 실무적인 프로그래밍에서도 리스트 순회가 매우 중요하다.
자바스크립트가 es6이 되면서 리스트 순회에 많은 변화가 있었다.(언어적으로 큰 발전이 있는 부분이다.)
기존에 es5에서 리스트 순회는 아래와 같았다.(es5스럽게 코딩할려고 var를 씀)
list라는 값에 length라는 프로퍼티에 의존해서 숫자라는 키로 순회하도록 i를 증가시켜주면서 list length만큼 숫자키로 접근해서 list안에 값을 순회하는 식으로 진행하였다.
<script>
const list = [1, 2, 3];
for (var i = 0; i < list.length; i++) {
log(list[i]);
}
const str = 'abc';
for (var i = 0; i < str.length; i++) {
log(str[i]);
}
</script>
=>
1
2
3
a
b
c
es6이 되면서 순회하는 방법이 달라졌다. 문법을 보면 훨씬 간결해졌다.
선언적이고 어떻게 순회하는 지를 구체적으로(명령적으로) 기술하기 보다는 보다 쉽게 for of문을 통해서 list안에 있는 값을(str안에 있는 값) 순회하는 식으로 간결하게 변경되었다.
간결하게 만든 이상의 의미가 있는데 es6이라는 언어가 개발자에게 어떠한 규약을 열어주었고 어떻게 순회에 대해서 추상화를 했고 어떻게 사용하도록 했는지에 대해서 계속 학습하자.
for (const a of list) {
log(a);
}
for (const a of str) {
log(a);
}
=>
1
2
3
a
b
c
<출처 : 유인동 함수형 프로그래밍과 JavaScript ES6+>
https://www.inflearn.com/course/functional-es6/dashboard
함수형 프로그래밍과 JavaScript ES6+ - 인프런 | 강의
ES6+와 함수형 프로그래밍을 배울 수 있는 강의입니다. 이 강좌에서는 ES6+의 이터러블/이터레이터/제너레이터 프로토콜을 상세히 다루고 응용합니다. 이터러블을 기반으로한 함수형 프로그래밍,
www.inflearn.com
'JavaScript > 함수형 프로그래밍과 JavaScript ES6+' 카테고리의 다른 글
odds(제너레이터와 이터레이터) & for of etc.. (0) | 2021.08.17 |
---|---|
제너레이터와 이터레이터 (0) | 2021.08.17 |
사용자 정의 이터러블, 이터러블/이터레이터 프로토콜 정의 & 전개 연산자 (0) | 2021.08.17 |
Array, Set, Map을 통해 iterable/iterator protocol 알아보기 (0) | 2021.08.17 |
함수형 자바스크립트 기본기(평가와 일급, 일급 함수, 고차 함수) (0) | 2021.08.17 |