내가 어떤 이유로 한 5~6년 전에 node.js 6.0 이상을 쓸 수 없어서 ES6을 불완전하게 지원했던 노드 5.x을 타겟으로 하는 프로그램들을 많이 작성했던 때가 있었어
let, class 문은 strict mode에서만 쓸 수 있고 const는 strict mode 밖에서 쓰면 함수 스코프로 작동하고...
Promise는 있지만 async/await는 없고(이건 ES6도 아니고 ES2017이긴 하지만)
화살표 함수는 되지만 매개변수 기본값 등은 지원되지 않았는데
Node.js 6.0 이상을 요구하는 어떤 npm 모듈을 쓰려고 모듈 내 수많은 js 화일에서 지원되지 않는 es6 문법을 전부 직접 고치기도 했고
await 없이 비동기 반복문을 구현하기 위해(처리 내에도 비동기 호출이 있고 각 처리 이후 setTimeout를 통한 대기가 있었어) 한참을 고민하다가 들여쓰기가 많은 콜백 + 재귀함수로 지저분한 코드지만 결국 성공했고
이후에는 npm에서 ES2017의 async/await를 비슷하게 구현한 모듈도 발견해서 쓴 적 있는데...
왠지 이때가 추억이 돼 버린 거 같아. 지금은 그냥 최신 버전으로 편하게 하는데...
코딩은 머리를 굴려가며 삽질할 때가 가장 재미있음
ㅋㅋㅋㅋㅋㅋ
이 댓글은 게시물 작성자가 삭제하였습니다.