Daehyunii's Dev-blog

<모던자바스크립트 26장 ES6 함수의 추가 기능> TIL-41 본문

✏️ 2022. TIL/July

<모던자바스크립트 26장 ES6 함수의 추가 기능> TIL-41

Daehyunii 2022. 7. 26. 19:54

  오늘은 ES6 버전부터 등장한 함수에 대해서 배웠다. 대표적으로 ES6 메서드 축약 표현과 화살표 함수에 대해서 배웠고, 가변 인자 함수를 구현하는 Rest 파라미터와 매개변수 기본값에 대해서도 배웠다. 우선 함수를 명확하게 구분지어서 문법을 달리하는 것은 굉장히 긍정적인 발전이라고 생각한다. 사실 공부를 하는 입장에서도 굉장히 헷갈리는 부분이었다. 함수 자체가 호출되는 방식에 따라 일반 함수도 되었다가 메서드도 되었다가 생성자 함수도 되었기 때문에 혼란을 많이 야기했었다. 그러나 메서드 축약 표현을 통해서 개념들을 명확히 할 수 있어서 너무 좋았다. 일반적으로 메서드라고 부르는 함수들은 생성자 함수로 사용할 이유가 거의 없을텐데도 constructor이고 prototype프로퍼티를 가지며 프로토타입을 만들어 낸다는 것도 굉장히 비효율적이라고 함수를 공부할때 생각했었다. 그러나 메서드 축약 표현과 화살표 함수를 통해 이러한 혼란과 비효율적인 측면을 개선하므로서 자바스크립트가 프로그래밍 언어에 있어서 크게 발전하게 된 이유 중 하나인것 같다. 또한 화살표 함수를 통해 콜백 함수의 일반 호출시 this 바인딩 문제를 해결하는것도 기막힌 발생이라고 생각했다. 물론 아직 이를 활용해서 코드를 작성하는건 아직 나에겐 굉장히 어려운 일이겠지만, 화살표 함수 대신 다른 방법을 통해 콜백 함수의 this문제를 해결하는 것보다는 훨씬 수월한 방법일 것이다. 오늘 배운 내용들을 익숙하게 잘 구사하게 된다면 굉장히 유용하고 가독성좋은 코드를 만들 수 있을것 같다.

 

2022.07.26 - [언어 공부 및 정리/자바스크립트[모던자바스크립트]] - 26장 ES6 함수의 추가 기능

 

26장 ES6 함수의 추가 기능

26.1 함수의 구분 ES6 이전까지 자바스크립트의 함수는 별다른 구분 없이 다양한 목적으로 사용되었다. 즉, 자바스크립트의 함수는 일반적인 함수로서 호출할 수도 있고, new 연산자와 함께 호출하

pinetree93.tistory.com