본문 바로가기

Javascript

기존과 달라진 ES6 에서의 리스트 순회 - JS ES6+ 함수형 프로그래밍 - 4

본 시리즈는 인프런 강의 함수형 프로그래밍과 JavaScript ES6+ ( 지식 공유자 : 유인동 님 ) 의 강의를 수강하면서 내용을 제 방식대로 포스팅하는 글입니다.

 

함수형 프로그래밍과 JavaScript ES6+ - 인프런 | 강의

ES6+와 함수형 프로그래밍을 배울 수 있는 강의입니다. 이 강좌에서는 ES6+의 이터러블/이터레이터/제너레이터 프로토콜을 상세히 다루고 응용합니다. 이터러블을 기반으로한 함수형 프로그래밍,

www.inflearn.com

기존의 리스트 순회

  // 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 이라는 언어가 개발자에게 어떤 규약을 열어주었고, 어떻게 순회에 대해서 추상화했고

어떻게 사용하는지에 대해 상세히 알아볼 필요가 있다.