장바구니 담기 close

장바구니에 상품을 담았습니다.

ECMAScript 6

ECMAScript 6

  • 김영보
  • |
  • 루비페이퍼
  • |
  • 2017-01-25 출간
  • |
  • 572페이지
  • |
  • 171 X 234 X 33 mm /1203g
  • |
  • ISBN 9791186710111
판매가

32,000원

즉시할인가

28,800

카드할인

0원(즉시할인 0%)

적립금

1,600원 적립(5%적립)

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

추가혜택

네이버페이 무조건 1%적립+ 추가 1%적립

수량
+ -
총주문금액
28,800

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평





모던하게! 표준에 맞게! 자바스크립트 프로그래밍의 거의 모든 것!

이 책은 ECMAScript 공식 스펙을 기준으로 ECMAScript 2015(이하 ES6)를 다룹니다. ES6와 ES7을 포함하여 자바스크립트 표준에 대한 거의 모든 내용이 담겨 있습니다. ES6에는 let과 const를 시작으로 화살표 함수, 제너레이터, 클래스, 심볼, 프락시, 프로미스 등 새롭고 특별한 개념이 많아서 완전하게 익숙해지려면 꽤 많은 시간이 필요합니다. 이 점을 고려하여 목차에 프로퍼티(메서드) 이름과 개요를 작성하여서 두고두고 참조할 수 있게 구성하였으며, 브라우저 개발자 도구의 중단점(Break Point)을 활용하여 오브젝트(인스턴스), 프로퍼티 상태를 파악하려는 독자를 위해 모든 소스에 debugger가 작성되어 있습니다. 또한, ES3부터 ES7까지 연산자, 명령문, 키워드, 함수, 클래스, 오브젝트와 메서드 등 자바스크립트의 모든 것을 망라한 "자바스크립트 치트 시트"를 부록으로 제공합니다.

◆ 이 책의 구성
- 1장~7장: let 변수, 화살표 함수 등 ES6에 추가된 구문, 문법
- 8장~13장: 빌트인 Number, Array 등의 오브젝트에 추가된 메서드와 프로퍼티
- 14장~30장: Class, Symbol, Proxy 등의 ES6에 추가된 오브젝트

◆ 이 책의 특징과 장점
- 자바스크립트 스펙에 근거한 논리적 접근
- 간략하면서 핵심을 파고 든 설명
- 자바스크립트 경험자를 위한 아키텍처와 매커니즘 접근
- 예제 코드의 자세한 설명
- 두고두고 참조할 수 있도록 하기 위한 구성

◆ 어떤 독자를 위한 책인가?
- 자바스크립트를 이해하고 있는 개발자
- ES6 이전은 다루지 않으며 ES6 중심으로 구성
- 자바스크립트를 처음 접하는 독자는 먼저 자바스크립트 ES5 학습 필요


목차


1장 개요
1.1.ECMA-262 스펙 상태
1.2.ES6의 방향성
1.3.용어 표기
1.4.용어 기준
1.5.코딩 환경

2장 let, const
2.1.var 키워드
2.2.let 키워드
2.3.let 변수 작성 방법
2.4.블록 스코프
2.5.let과 this 키워드
2.6.function
2.7.try-catch
2.8.switch-case
2.9.호이스팅
2.10.for( )
2.11.const

3 arrow 함수
3.1.개요
3.2.ES5 형태와 차이
3.3.블록, 파라미터
3.4.return
3.5.new 연산자
3.6.arguments 사용
3.7.this와 setTimeout( )
3.8.화살표 함수와 setTimeout( )
3.9.prototype

4장 Iteration
4.1.개요
4.2.이터러블 프로토콜
4.3.이터레이터 프로토콜

5장 Spread 연산자
5.1.개요
5.2.rest 파라미터
5.3.Array-like
5.4.Array-like 전개
5.5.rest와 arguments 차이

6장 디스트럭처링
6.1.개요
6.2.Array 분할 할당
6.3.Object 분할 할당
6.4.파라미터 분할 할당

7장 오퍼레이션
7.1.프로퍼티 이름 조합
7.2.Default Value
7.3.Default 파라미터
7.4.for-of
7.5.for-of와 for-in 차이
7.6.for-of로 Object 열거
7.7.거듭 제곱 연산자

8장 Object 오브젝트
8.1.오퍼레이션
8.2.디스크립터
8.3.get, set 속성
8.4.getter
8.5.setter
8.6.is( ): 값과 값 타입 비교
8.7.assign( ): 오브젝트 프로퍼티 복사
8.8.assign( ) 필요성
8.9.assign( ) 고려사항
8.10.assign( ) getter
8.11.setPrototypeOf( ):__proto__에 첨부
8.12.__proto__

9장 Number 오브젝트
9.1.Number 상수
9.2.EPSILON
9.3.진수 리터럴
9.4.isNaN( ): NaN 여부
9.5.isInteger( ): 정수 여부
9.6.isSafeInteger( ): 안정 정수 여부
9.7.isFinite( ): 유한 값 여부

10장 Math 오브젝트
10.1.Math 함수 목록
10.2.sinh( ): 쌍곡 사인
10.3.asinh( ): 쌍곡 아크사인
10.4.cosh( ): 쌍곡 코사인
10.5.acosh( ): 쌍곡 아크코사인
10.6.tanh( ): 쌍곡 탄젠트
10.7.atanh( ): 쌍곡 아크탄젠드
10.8.log2( ): 2를 밑으로 한 로그 값
10.9.log10( ): 10을 밑으로 한 로그 값
10.10.log1p( ): 로그(1 + 값)
10.11.expm1( ): 자연로그 상수의 x승 - 1
10.12.hypot( ): 제곱근
10.13.cbrt( ): 세제곱근
10.14.sign( ): 사인 값
10.15.trunc( ): 소수를 제외한 정수
10.16.imul( ): 32비트로 반환
10.17.clz32( ): 32비트 값에서 0비트 수
10.18.fround( ): 32비트 유동 소수 값

11장 String 오브젝트
11.1.Unicode
11.2.fromCodePoint( ): 코드 포인트 문자 반환
11.3.codePointAt( ): 코드 포인트 값 반환
11.4.includes( ): 문자열 포함 여부
11.5.startsWith( ): 문자열 시작 여부
11.6.endsWith( ): 문자열 종료 여부
11.7.repeat( ): 문자열 복제
11.8.normalize( ): 유니코드 정규화 형식 변환

12장 Template 리터럴
12.1.개요
12.2.tagged Template
12.3.String.raw
12.4.String.raw( ): 문자열 전개, 조합

13장 Array 오브젝트
13.1.from( ): Array 오브젝트 생성
13.2.of( ): 배열 엘리먼트 설정
13.3.copyWithin( ): 범위 값 복사, 설정
13.4.fill( ): 범위 값 변경
13.5.entries( ): 이터레이터 오브젝트 생성
13.6.keys( ): Key 이터레이터 오브젝트 생성
13.7.values( ): value 이터레이터 오브젝트 생성
13.8.find( ): 엘리먼트 값 비교, 반환
13.9.findIndex( ): 배열 인덱스 반환

14장 RegExp 오브젝트
14.1.unicode 플래그
14.2.sticky 플래그

15장 Generator 오브젝트
15.1.개요
15.2.function* 선언문
15.3.function* 표현식
15.4.GeneratorFunction( ): 제너레이터 함수 생성
15.5.yield: 제너레이터 함수 실행, 멈춤
15.6.next( ): yield 단위로 실행
15.7.next( ) 활용
15.8.next( )의 다양한 형태
15.9.return( ): 이터레이터 종료
15.10.throw( ): Error 발생
15.11.yield* 키워드

16장 Class 오브젝트
16.1.Class 선언문
16.2.Class 표현식
16.3.클래스 특징
16.4.constructor
16.5.constructor 반환 값 변경
16.6.getter, setter
16.7.상속
16.8.extends 키워드
16.9.super 키워드
16.10.빌트인 오브젝트 상속
16.11.Object에서 super 사용
16.12.static 키워드
16.13.Class 호이스팅
16.14.computed name
16.15.this
16.16.제너레이터
16.17.new.target
16.18.Image 오브젝트 상속
16.19.Class 방향성

17장 Symbol 오브젝트
17.1.primitive
17.2.Symbol( ): Symbol 값 생성
17.3.Symbol 값 변경
17.4.Symbol 오브젝트 생성
17.5.오브젝트에서 Symbol 사용
17.6.Symbol 사용 형태

18장 Symbol 프로퍼티
18.1.Well-Known Symbol
18.2.toStringTag
18.3.isConcatSpreadable
18.4.unscopables
18.5.species 개념
18.6.species
18.7.다른 Class 반환
18.8.null 반환
18.9.toPrimitive
18.10.이터레이터
18.11.제너레이터
18.12.match( ): match 결과 반환

19장 Symbol 메서드
19.1.for( ): Symbol 값 저장
19.2.keyFor( ): key 값 반환
19.3.toString( ): 문자열로 변환
19.4.valueOf( ): Symbol 프리미티브 값
19.5.getOwnPropertySymbols( ): Symbol 프로퍼티 반환
19.6.JSON.stringify( ): JSON 형태로 변환

20장 Map 오브젝트
20.1.개요
20.2.new Map( ): Map 인스턴스 생성
20.3.set( ): key와 value 설정
20.4.get( ): key가 같은 value 반환
20.5.has( ): key 존재 여부
20.6.entries( ): 이터레이터 오브젝트 생성
20.7.keys( ): key 반환 이터레이터 오브젝트 생성
20.8.values( ): value 반환 이터레이터 오브젝트 생성
20.9.forEach( ): 엘리먼트마다 콜백 함수 호출
20.10.delete( ): 엘리먼트 삭제
20.11.clear( ): 모든 key, value 지움
20.12.Symbol.iterator: 이터레이터 오브젝트 생성

21장 WeakMap 오브젝트
21.1.개요
21.2.new WeakMap( ): WeakMap 인스턴스 생성
21.3.set( ): key, value 설정
21.4.get( ): key가 같은 value 반환
21.5.has( ): key 존재 여부
21.6.delete( ): 엘리먼트 삭제

22장 Set 오브젝트
22.1.개요
22.2.new Set( ): Set 인스턴스 생성
22.3.add( ): value 추가
22.4.has( ): value 존재 여부
22.5.entries( ): 이터레이터 오브젝트 생성
22.6.values( ): value 반환 이터레이터 오브젝트 생성
22.7.keys( ): key 반환 이터레이터 오브젝트 생성
22.8.forEach( ): 엘리먼트마다 콜백 함수 호출
22.9.delete( ): 엘리먼트 삭제
22.10.clear( ): 모든 value 지움
22.11.Symbol.iterator: 이터레이터 오브젝트 생성

23장 WeakSet 오브젝트
23.1.개요
23.2.new WeakSet( ): WeakSet 인스턴스 생성
23.3.add( ): value 추가
23.4.has( ): value 존재 여부
23.5.delete( ): 엘리먼트 삭제

24장 Proxy 오브젝트
24.1.개요
24.2.트랩, 핸들러

25장 Proxy Trap
25.1.new Proxy( ): Proxy 인스턴스 생성
25.2.set( ): key, value 설정
25.3.this와 트랩
25.4.get( ): 프로퍼티 값 반환
25.5.has( ): 키 존재 여부
25.6.defineProperty( ): 프로퍼티 추가, 값 변경
25.7.deleteProperty( ): 프로퍼티 삭제
25.8.preventExtensions( ): 프로퍼티 추가 금지
25.9.isExtensible( ): 프로퍼티 추가 가능 여부
25.10.getPrototypeOf( ): prototype 반환
25.11.setPrototypeOf( ): __proto__에 prototype 설정
25.12.ownKeys( ): 프로퍼티 키 반환
25.13.getOwnPropertyDescriptor( ): 디스크립터 반환
25.14.construct( ): 인스턴스 생성
25.15.apply( ): 함수 호출
25.16.revocable( ): Proxy 무효화

26장 Reflect 오브젝트
26.1.개요
26.2.get( ): 프로퍼티 값 반환
26.3.set( ): key, value 설정
26.4.has( ): 키 존재 여부
26.5.apply( ): 함수 호출
26.6.construct( ): 인스턴스 생성
26.7.defineProperty( ): 프로퍼티 추가, 값 변경
26.8.deleteProperty( ): 프로퍼티 삭제
26.9.getOwnPropertyDescriptor( ): 디스크립터 반환
26.10.getPrototypeOf( ): prototype 반환
26.11.setPrototypeOf( ): __proto__에 prototype 설정
26.12.preventExtensions( ): 프로퍼티 추가 금지
26.13.isExtensible( ): 프로퍼티 추가 가능 여부
26.14.ownKeys( ): 프로퍼티 키 반환

27장 Promise 오브젝트
27.1.개요
27.2.Promise 상태
27.3.new Promise( ): Promise 인스턴스 생성
27.4.then( ): 성공, 실패 핸들러
27.5.catch( ): 실패 핸들러
27.6.resolve( ): 성공 상태의 인스턴스 반환
27.7.reject( ): 실패 상태의 인스턴스 반환
27.8.all( ): 모두 성공이면 핸들러 실행
27.9.race( ): 처음 한 번만 핸들러 호출

28장 ArrayBuffer 오브젝트
28.1.Typed Array
28.2.Typed Array 구현 요소
28.3.ArrayBuffer 개요
28.4.new ArrayBuffer( ): ArrayBuffer 인스턴스 생성
28.5.slice( ): 지정 범위 복사
28.6.isView( ): TypedArray, DataView 여부
28.7.Symbol.species: constructor 반환

29장 TypedArray 오브젝트
29.1.개요
29.2.비트 값 구성
29.3.new TypedArray(length): 엘리먼트 수로 TypedArray 생성
29.4.new TypedArray(TypedArray): TypedArray로 TypedArray 생성
29.5.new TypedArray(object): 오브젝트로 TypedArray 생성
29.6.new TypedArray(ArrayBuffer): ArrayBuffer로 TypedArray 생성
29.7.BYTES_PER_ELEMENT: 엘리먼트의 바이트 수
29.8.buffer: 사용한 ArrayBuffer 반환
29.9.byteOffset: ArrayBuffer의 오프셋 값
29.10.from( ): TypedArray 생성
29.11.of( ): TypedArray 생성 및 값 설정
29.12.set( ): TypedArray에 값 설정
29.13.subarray( ): ArrayBuffer 값 복사
29.14.Symbol.iterator( ): 이터레이터 오브젝트 생성
29.15.Symbol.species( ): constructor 반환
29.16.copyWithin( ): 범위 값 복사
29.17.구조체

30장 DataView 오브젝트
30.1.개요
30.2.new DataView( ): DataView 생성
30.3.엔디언
30.4.getInt8( ): 사인 부호가 있는 8비트 값 반환
30.5.setInt8( ): 사인 부호가 있는 8비트 값 설정
30.6.setUint8( ): 사인 부호가 없는 8비트 값 설정
30.7.setInt16( ): 사인 부호가 있는 16비트 값 설정

부록 : 자바스크립트 치트 시트
찾아보기

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.