웹 개발자를 위한 자바스크립트의 모든 것 (ES2015-ES2020과 그 이후의 모든 것)

웹 개발자를 위한 자바스크립트의 모든 것 (ES2015-ES2020과 그 이후의 모든 것)

$43.67
Description
자바스크립트의 모든 것을
깊이 있게, 알기 쉽게!
웹 전성시대가 되면서 자바스크립트는 변두리 언어에서 핵심 언어로 부상했다. 많은 사람들이 쓰는 언어가 되면서 프런트엔드에서 백엔드까지 영역을 넓혀왔고, 이는 자바스크립트에 다양한 요구를 하는 계기가 되었다.
자바스크립트는 과거보다 현재 더 빠르게 변화하고 성장하는 언어가 되었고, ES2015부터 ES2020까지 매우 빠르게 발전하고 새로운 기능을 추가해왔다. 오랜 자바스크립트 개발자는 기존의 관습이 익숙해서 새로운 기능에 적응하지 못하고, 새로 입성한 자바스크립트 개발자는 구버전과 신버전 사이에서 혼란을 겪는다.
스택 오버플로에서 자바스크립트 분야 상위 열 명 중에 한 명인 크라우더는 십여 년 이상 개발자들의 질문에 답변하면서 이러한 혼란을 잘 이해하고 있으며, 오랜 습관이 무엇인지, 오래된 습관을 새로운 기능으로 바꾸려면 무엇을 해야 하는지 잘 이해하고 있다.

[이 책의 주요 내용]
ㆍ ES2015-ES2020에 추가된 기능과 ES2021에 담기게 될 기능
ㆍ 자바스크립트의 최신 문법. 널 병합 연산자, let과 const, class 문법, private 메서드와 필드, new.target, 화살표 함수, BigInt, async와 await, 제너레이터 함수, 디스트럭처링, 템플릿 리터럴, 공유 메모리, 리플렉션, 위크레프, for-of, for-await-of 등을 설명한다.
ㆍ 새로운 기능과 패턴, 안티 패턴. 모듈, 이터레이션, 제너레이터, 프라미스, 심볼, 프록시, 리플렉션, 위크맵, 위크세트, Atomics 객체, 공유 메모리 등의 기능과 사용 패턴, 주의할 점, 오래된 습관에서 새로운 기능으로 바꾸는 방법을 설명한다.
ㆍ 자주 하는 실수와 개선하는 방법
ㆍ 널리 지원되지 않는 새로운 기능을 사용하는 방법

자바스크립트를 사용하다가 막히는 부분이 있다면 인터넷 어딘가에 숨어 있는 정보를 찾아서 해결할 수도 있다. 그러나 폭넓은 설명과 깊이, 내가 무엇을 모르는지도 모르는 것을 알게 해줄 풍부한 지침서를 찾는다면 이 책이라고 할 수 있다. 깊이 알면 내가 더 깊어진다.

[관련도서]
리팩토링 자바스크립트
리액트 네이티브를 다루는 기술
Node.js 교과서 개정2판
저자

T.J.크라우더

T.J.크라우더(T.J.Crowder)는30년의전문경력을가진소프트웨어엔지니어로서경력의절반이상은자바스크립트를사용하여작업했다.그는영국의소프트웨어컨설팅과제품회사인파사이트소프트웨어를운영하고있다.스택오버플로우의상위10위기여자중한명이자자바스크립트태그의상위기여자로서,그는지식을전달하는것뿐만아니라문제를해결하는과정과함께도움을주는데중점을두고자신이배운기술을사용하여다른사람들이직면한기술적인문제를해결하는것을좋아한다.

목차

1장ES2015부터ES2020까지그리고그이후의새로운장난감
__1.1정의,이해관계자,용어
__1.2“새로운장난감”은무엇인가?
__1.3새로운장난감은어떻게만들어지는가?
__1.4새로운장난감을따라가기
__1.5오늘의장난감을과거의환경에서,내일의장난감을오늘의환경에서사용하기
__1.6정리하며

2장블록스코프선언:let과const
__2.1let과const소개
__2.2진짜블록스코프
__2.3반복된선언은에러다
__2.4호이스팅과일시적데드존
__2.5새로운종류의전역(global)
__2.6const:자바스크립트의상수
__2.7루프의블록스코프
__2.8과거습관을새롭게

3장새로운함수기능
__3.1화살표함수와this,super,그외
__3.2기본값매개변수
__3.3“나머지”연산자
__3.4매개변수목록에서후행쉼표와함수호출
__3.5함수name속성
__3.6블록내함수선언
__3.7과거습관을새롭게

4장클래스
__4.1클래스란무엇인가?
__4.2새로운클래스문법소개
__4.3기존문법과비교
__4.4서브클래스만들기
__4.5Object.protoype떠나보내기
__4.6new.target
__4.7클래스선언대클래스표현식
__4.8앞으로더배울것
__4.9과거습관을새롭게

5장새로운객체기능
__5.1계산된속성이름
__5.2단축속성
__5.3객체의프로토타입얻기와설정하기
__5.4메서드문법과super외부클래스
__5.5심볼
__5.6새로운객체함수
__5.7Symbol.toPrimitive
__5.8속성순서
__5.9속성스프레드구문
__5.10과거습관을새롭게

6장이터러블,이터레이터,for-of,이터러블스프레드,제너레이터
__6.1이터레이터,이터러블,for-of루프,이터러블스프레드구문
__6.2제너레이터함수
__6.3과거습관을새롭게

7장디스트럭처링
__7.1개요
__7.2기본객체디스트럭처링
__7.3기본배열(과이터러블)디스트럭처링
__7.4기본값
__7.5디스트럭처링패턴에서나머지문법
__7.6다른이름사용하기
__7.7계산된속성이름
__7.8중첩된디스트럭처링
__7.9매개변수디스트럭처링
__7.10반복문에서디스트럭처링
__7.11과거습관을새롭게

8장프라미스
__8.1왜프라미스를사용하는가?
__8.2프라미스기초
__8.3기존프라미스사용하기
__8.4기존프라미스에핸들러추가하기
__8.5프라미스만들기
__8.6그외프라미스메서드
__8.7프라미스패턴
__8.8프라미스안티패턴
__8.9프라미스서브클래스
__8.10과거습관을새롭게

9장비동기함수,이터레이터,제너레이터
__9.1async함수
__9.2비동기이터레이터,이터러블,제너레이터
__9.3과거습관을새롭게

10장템플릿,태그함수,새로운문자열함수
__10.1템플릿리터럴
__10.2향상된유니코드지원
__10.3반복
__10.4새로운문자열메서드
__10.5match,split,search,replace메서드업데이트
__10.6과거습관을새롭게

11장새로운배열함수,타입이있는배열
__11.1새로운배열메서드
__11.2반복,스프레드,디스트럭처링
__11.3배열순서유지정렬
__11.4타입이있는배열
__11.5과거습관을새롭게

12장맵과세트
__12.1맵
__12.2세트
__12.3위크맵
__12.4위크세트
__12.5과거습관을새롭게

13장모듈
__13.1모듈소개
__13.2모듈기초
__13.3익스포트를다시이름짓기
__13.4다른모듈의익스포트를다시익스포트하기
__13.5임포트를다시이름짓기
__13.6모듈의네임스페이스객체임포트하기
__13.7다른모듈의네임스페이스객체익스포트하기
__13.8단지사이드이펙트를위해모듈임포트하기
__13.9임포트와익스포트엔트리
__13.10임포트는살아있고읽기전용이다
__13.11모듈인스턴스는영역전용이다
__13.12어떻게모듈을읽어오는가?
__13.13임포트/익스포트문법을정리하며
__13.14동적임포트
__13.15트리셰이킹
__13.16번들링
__13.17메타데이터임포트하기
__13.18워커모듈
__13.19과거습관을새롭게

14장리플렉션-리플렉트와프록시
__14.1리플렉트
__14.2프록시
__14.3과거습관을새롭게

15장정규표현식업데이트
__15.1플래그속성
__15.2새로운플래그
__15.3명명된캡처그룹
__15.4후방탐색지정
__15.5유니코드기능
__15.6과거습관을새롭게

16장공유메모리
__16.1소개
__16.2위험!이곳에는용이살고있다!
__16.3브라우저지원
__16.4공유메모리기초
__16.5객체가아니라메모리가공유된다
__16.6레이스컨디션,비순차저장,신선하지않은값,찢어짐등
__16.7Atomics객체
__16.8공유메모리예
__16.9이곳에는용이살고있다!(한번더)
__16.10과거습관을새롭게

17장그외
__17.1BigInt
__17.2새로운정수리터럴
__17.3새로운수학메서드
__17.4지수연산자(**)
__17.5Date.prototype.toString변경
__17.6Function.prototype.toString변경
__17.7숫자추가
__17.8Symbol.isConcatSpreadable
__17.9다양한구문수정
__17.10다양한표준라이브러리/전역추가
__17.11부속서B:브라우저전용기능
__17.12꼬리호출최적화
__17.13과거습관을새롭게

18장예정된클래스기능
__18.1퍼블릭과프라이빗클래스필드,메서드,접근자
__18.2과거습관을새롭게

19장앞으로나올예정인기능
__19.1최상위수준await
__19.2위크레프와클린업콜백
__19.3정규표현식일치색인
__19.4String.prototype.replaceAll
__19.5AtomicsasyncWait
__19.6다양한구문변경
__19.7사라지게될레거시정규표현식기능
__19.8독자에게감사!

부록A신비한기능사전(J.K.롤링에게사과한다)
A.1기능(알파벳순)
A.2새로운기본
A.3새로운구문,키워드,연산자,루프,그외
A.4새로운리터럴양식
A.5표준라이브러리추가와변경
A.6기타