본문내용 바로가기
이벤트 무료배송

ECMAScript 6 길들이기 최신 표준으로 다시 배우는 자바스크립트 프로그래밍

acorn+PACKT 시리즈
나라얀 프루스티 지음 | 이일웅 옮김 | 에이콘출판 | 2016년 01월 20일 출간

이 책의 다른 상품 정보

  • 정가 : 20,000원
    판매가 : 18,000 [10%↓ 2,000원 할인]
  • 제휴할인가 : 17,100 교보-KB국민카드 5% 청구할인(실적무관) 카드/포인트 안내
  • 통합포인트 : 1,000 적립 [5% 적립]
  • 추가혜택 :
    naver네이버페이 결제 시 최대 2% 추가 적립 payco페이코 결제 시 5,000원 할인 + 2만원 적립 okcashbag 실 결제 금액의 0.5% 적립 안내
  • 배송비 : 무료 배송비 안내
  • 도착예정일 : 서울 종로구 종로1가 교보생명빌딩 기준 지역변경
    당일배송 지금 주문하면 오늘( 2일,목) 도착 예정 도착 예정일 안내
  • 바로드림 : 인터넷으로 주문하고 영업점에서 직접 수령 안내
분철서비스
닫기

이 책의 이벤트 해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

  • 대표 IT 컴퍼니 지원자격에 맞춰 준비하자
    06. 21 ~ 12. 31
상품상세정보
ISBN 9788960778153(896077815X)
쪽수 212쪽
크기 188 * 235 * 13 mm /516g 판형알림
이 책의 원서 Learning ECMAScript 6/Narayan Prusty

책소개

이 책이 속한 분야

2015년 6월, 자바스크립트의 새 표준인 ECMAScript 6가 확정 발표됐다. 이 책은 ES6의 여러 가지 새로운 기능과 구문 요소들을 다루고 있으며, 빠르게 학습할 수 있도록 도와줄 것이다. 100여 개에 달하는 간단한 예제 코드를 실습해보면서 ES6에서 새로 추가된 부분과, 이전 버전과 달라진 점이 무엇인지 일목요연하게 파악할 수 있도록 자세히 안내한다.

이 책의 총서

총서 자세히 보기

저자소개

저자 : 나라얀 프루스티

저자 나라얀 프루스티(Narayan Prusty)는 웹/모바일 앱 개발자다. 워드프레스, HTML5, 자바스크립트, PHP, 솔라(Solr), 코도바(Cordova)에 능하다. 수년간 기술을 연마하며 애플리케이션을 제작해왔다.
다양한 애플리케이션 개발 강좌 서비스로 전 세계 10,000명 이상의 구독자를 확보한 QScutter.com을 창업했다. 개인 블로그(http://www.QNimate.com)는 인텔 XDK 및 워드프레스 블로그 중에서 최상위권에 랭크되어 있다. 세계 각국의 많은 기업에서 컨설턴트, 프리랜서 개발자로 근무했다.
개인 홈페이지는 http://www.twitter.com/narayanprusty다.

역자 : 이일웅

작가의 말

ECMAScript는 ECMA 인터내셔널(Ecma International)의 ECMA-262와 ISO/IEC 16262에 근거한 표준 스크립트 언어다. 자바스크립트, J스크립트(Jscript), 액션스크립트(ActionScript)가 ECMAScript의 상위 집합(superset)으로, 더 많은 객체/메소드가 있고 기능 면에서 ECMAScript보다 우월하지만 언어로서의 핵심 기능은 ECMAScript와 같다. ECMAScript의 7번째 수정판인 ECMAScript 6는 간단히 ‘ES6’라 부른다.
자바스크립트는 실로 강력하고 유연한 프로그래밍 언어지만 불필요한 군더더기가 많아 혹평을 받아왔다. 그래서 좀 더 쉬운 구문과 강력한 기능을 제공하면서도 자바스크립트로 컴파일이 가능한 커피스크립트(CoffeeScript)나 타입스크립트(Typescript) 같은 추상체를 대신 쓰는 개발자들도 있었다. 이제 ES6 이후론 코드 품질을 높이려고 잡다한 추상체와 테크닉을 빌려 써서 개발 프로세스를 늘어지게 하지 않아도 될 정도로 자바스크립트가 좋아졌다.
ES6의 신기능은 커피스크립트 등 다른 인기 있는 추상화 언어에서 비롯됐고 작동 방식 또한 동일하기 때문에 자바스크립트로선 신기능이지만 프로그래밍 세계에선 전혀 새로운 것들이 아니다.
이 책은 자바스크립트 예제 코드를 보면서 ECMAScript의 신 버전, ES6의 전반적인 새 기능을 설명한다. 모든 예제 코드는 브라우저, 노드JS, 코도바 등의 환경에서 실습 가능하다. - 저자 나라얀 프루스티

이 책은 2015년 6월 17일, 공식 표준으로 발표된 ECMS-262의 여섯 번째 버전, 즉 ECMAScript 6의 새로운 기능을 빠르게 습득하기 위한 입문서입니다. 아직까지는 IE, 파이어폭스, 크롬 등 메이저 브라우저에서 ECMAScript 6 명세를 완벽히 구현하지 못했고, 이전 버전(ECMAScript 5)의 코드로도 ES6의 신기능을 어느 정도 흉내 낼 수 있는 상황이지만 새 표준의 보급은 과거에 비해 훨씬 빠르게 이루어질 것으로 예상됩니다.
대부분의 모든 기술이 그렇듯 새 버전이 반드시 구 버전에 비해 월등하고 우수하다고 할 수는 없고 그것을 가져다 쓰는 사용자가 굳이 얼리 어댑터(early adopter)가 되어야 할 필요는 없겠지만, 자바스크립트가 전문인 프로그래머라면 ES6가 당연한 대세로 자리를 잡기 전에 미리 준비를 해두지 않으면 안 될 것입니다. 그런 점에서 책이 출간된 이 시점이 자바스크립트의 새 표준을 학습할 적당한 시기가 아닐까 싶습니다.
이 책은 주로 새 표준에서 등장한 새로운 구문 요소와 간단한 예제를 설명하지만, C나 자바, 파이썬 등 다른 언어 경험이 있는 분들에게는 프로그래밍 언어들이 점차 상향 평준화하고 있다는 동향과 자바스크립트만의 독특한 디자인 철학과 개념을 엿볼 수 있는 계기가 될 것입니다. 이 책을 움켜쥔 독자 여러분이 나무를 자세히 들여다 보면서도 숲 전체를 조망할 수 있는 식견과 높은 수준의 마인드를 가진 자바스크립트 개발자로 한 단계 성장하길 바랍니다. - 역자 이일웅

목차

1 문법 맛보기
__let 키워드
____함수 스코프 변수 선언
____블록 스코프 변수 선언
____변수 재선언
__const 키워드
____상수의 스코프
____상수를 통한 객체 참조
__파라미터 기본값
__펼침 연산자
____펼침 연산자의 다른 용례
________배열 값을 다른 배열의 일부로 만듦
________배열 값을 다른 배열에 밀어 넣기
____여러 배열 펼침
__나머지 파라미터
__해체 할당
____배열 해체 할당
________값을 건너뛴다
________배열 해체 할당에 나머지 연산자를 사용
________변수의 기본값
________중첩 배열 해체
________파라미터로 배열 해체 할당 사용
____객체 해체 할당
________변수의 기본값
________조합 프로퍼티명을 해체
________중첩 객체를 해체
________파라미터로 객체 해체 할당 사용
__화살표 함수
____화살표 함수에서의 this 값
____화살표 함수와 일반 함수의 차이점
__강화된 객체 리터럴
____프로퍼티 정의
____메소드 정의
____조합 프로퍼티명
__요약

2 라이브러리
__숫자
____2진수
____8진수
____Number.isInteger(number) 메소드
____Number.isNaN(value) 메소드
____Number.isFinite(number) 메소드
____Number.isSafeInteger(number) 메소드
____Number.EPSILON 프로퍼티
__수학 연산
____삼각 연산
____산술 연산
____기타 메소드
________Math.imul(number1, number2) 함수
________The Math.clz32(number) 함수
________The Math.sign(number) 함수
________The Math.trunc(number) 함수
________The Math.fround(number) 함수
__문자열
____비트가 초과된 코드 포인트를 이스케이프
____codePointAt(index) 메소드
____String.fromCodePoint(number1, ..., number 2) 메소드
____repeat(count) 메소드
____includes(string, index) 메소드
____startsWith(string, index) 메소드
____endsWith(string, index) 함수
____정규화
________사례
____템플릿 문자열
________표현식
________여러 줄 문자열
________원래 문자열
__배열
____Array.from(iterable, mapFunc, this) 메소드
____Array.of(values...) 메소드
____fill(value, startIndex, endIndex) 메소드
____find(testingFunc, this) 메소드
____findIndex(testingFunc, this) 메소드
____copyWithin(targetIndex, startIndex, endIndex) 함수
____entries(), keys(), and values() 메소드
__콜렉션
____배열 버퍼
____타입화 배열
____세트
____위크세트
____맵
____위크맵
__객체
______proto__ 프로퍼티
________Object.is(value1, value2) 메소드
________Object.setPrototypeOf(object, prototype) 메소드
________Object.assign(targetObj, sourceObjs...) 메소드
__요약

3 이터레이터
__ES6 심볼
____typeof 연산자
____new 연산자
____심볼을 프로퍼티 키로 사용
____Object.getOwnPropertySymbols() 메소드
____Symbol.for(string) 메소드
____상용 심볼
__이터레이션 규약
____이터레이터 규약
____이터러블 규약
__제너레이터
____return(value) 메소드
____throw(exception) 메소드
____yield* 키워드
__for...of 루프
__꼬리 호출 최적화
____꼬리 호출 아닌 코드를 꼬리 호출로 전환
__요약

4 비동기 프로그래밍
__자바스크립트 실행 모델
__비동기 코드 작성
____이벤트를 포함한 비동기 코드
____콜백을 포함한 비동기 코드
__구원자, 프라미스
____프라미스 생성자
____이룸값
____then(onFulfilled, onRejected) 메소드
____catch(onRejected) 메소드
____Promise.resolve(value) 메소드
____Promise.reject(value) 메소드
____Promise.all(iterable) 메소드
____Promise.race(iterable) 메소드
__프라미스 기반의 자바스크립트 API
____배터리 상태 API
____웹 암호화 API
__요약

5 리플렉트 API 구현
__Reflect 객체
____Reflect.apply(function, this, args) 메소드
____Reflect.construct(constructor, args, prototype) 메소드
____Reflect.defineProperty(object, property, descriptor) 메소드
________데이터 프로퍼티와 접근자 프로퍼티
____Reflect.deleteProperty(object, property) 메소드
____Reflect.enumerate(object) 메소드
____Reflect.get(object, property, this) 메소드
____Reflect.set(object, property, value, this) 메소드
____Reflect.getOwnPropertyDescriptor(object, property) 메소드
____Reflect.getPrototypeOf(object) 메소드
____Reflect.setPrototypeOf(object, prototype) 메소드
____Reflect.has(object, property) 메소드
____Reflect.isExtensible(object) 메소드
____Reflect.preventExtensions(object) 메소드
____Reflect.ownKeys(object) 메소드
__요약

6 프록시
__프록시란?
____용어 정의
__프록시 API
____트랩
________get(target, property, receiver) 메소드
________set(target, property, value, receiver) 메소드
________has(target, property) 메소드
________isExtensible(target) 메소드
________getPrototypeOf(target) 메소드
________setPrototypeOf(target, prototype) 메소드
________preventExtensions(target) 메소드
________getOwnPropertyDescriptor(target, property) 메소드
________defineProperty(target, property, descriptor) 메소드
________The deleteProperty(target, property) 메소드
________enumerate(target) 메소드
________ownKeys(target) 메소드
________apply(target, thisValue, arguments) 메소드
________construct(target, arguments) 메소드
____Proxy.revocable(target, handler) 메소드
________용례
__프록시 용도
__요약

7 클래스 답사
__객체 지향 자바스크립트
____자바스크립트 데이터 타입
____객체 생성
____상속
____원시 데이터 타입 생성자
__클래스 다루기
____클래스 정의
________클래스 선언
________클래스 표현식
____프로토타입 메소드
________get/set 메소드
________제너레이터 메소드
____정적 메소드
____클래스의 상속 구현
____조합 메소드명
____프로퍼티 속성
____클래스는 호이스팅 안 된다!
____생성자 메소드 결과를 오버라이딩
____정적 접근자 프로퍼티, Symbol.species
____암시적 파라미터, new.target
__객체 리터럴에 super 사용
__요약

8 모듈러 프로그래밍
__자바스크립트 모듈이란?
__모듈 구현 - 기존 방법
____즉시 실행 함수 표현식(IIFE)
____비동기 모듈 정의(AMD)
____커먼JS
____만능 모듈 정의
__새로운 모듈 구현 방식
____ES6 모듈 생성
____ES6 모듈 임포트
____모듈 로더
____브라우저에 모듈 사용
____eval() 함수에서 모듈 사용
____기본 익스포트 vs 명명된 익스포트
____종합 예제
__요약

추천사

잭 프랭클린(자바 개발자, GoCardless)

요즘이야말로 자바스크립트를 사용하기에 더 없이 좋은 시기다. 지난 수년간 자바스크립트는 건드리고 싶지 않은 언어에서 누구나 배우고 싶어하는 언어로 거듭났다. 하루가 멀다하고 새로 탄생하는 크고 복잡한 애플리케이션들이 그 어느... 더보기

출판사 서평

★ 이 책에서 다루는 내용 ★

■ ES6부터 도입된 새로운 구문 사용법
■ 프로토타입 기반의 ES6 기능 활용
■ ES6 비호환 환경에서의 ES6 코드 실행
■ 프라미스를 이용해 읽고 관리하기 쉬운, 좀 더 우수한 비동기 코드 작성
■ 이터레이터, 이터러블, 제너레이터의 사용법
■ 객체 지향 프로그래밍과 클래스로 객체 생성하는 방법.
■ ES6 프록시 API를 통한 프록시 작성 및 용도 이해
■ ES6 모듈을 이용한 자바스크립트 라이브러리 제작

★ 이 책의 대상 독자 ★

기본적인 개발 지식을 보유한 자바... 더보기

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면 통합포인트를 드립니다.
결제 90일 이내 작성 시 300원 / 발송 후 5일 이내 작성시 400원 / 이 상품의 첫 리뷰 작성 시 500원
(포인트 적립은 작성 후 다음 날 혹은 해당 도서 배송 출발 후 익일에 적립됩니다.
외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외)
안내
  • 해당도서의 리뷰가 없습니다.

Klover 평점/리뷰 (0)

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기+

이 분야의 신간

더보기+

바로가기

  • 우측 확장형 배너 2

최근 본 상품