상세정보
모던 자바스크립트 Deep Dive
- 저자
- 이웅모
- 출판사
- 위키북스
- 출판일
- 2020-09-25
- 등록일
- 2021-01-28
- 파일포맷
- EPUB
- 파일크기
- 65MB
- 공급사
- 교보문고
- 지원기기
-
PC
PHONE
TABLET
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
269개의 그림과 원리를 파헤치는 설명으로 ‘자바스크립트의 기본 개념과 동작 원리’를 이해하자!
웹페이지의 단순한 보조 기능을 처리하기 위한 제한적인 용도로 태어난 자바스크립트는 과도하다고 느껴질 만큼 친절한 프로그래밍 언어입니다. 이러한 자바스크립트의 특징은 편리한 경우도 있지만 내부 동작을 이해하기 어렵게 만들기도 합니다.
하지만 자바스크립트는 더 이상 제한적인 용도의 프로그래밍 언어가 아닙니다. 오랜 변화를 거쳐 이제 자바스크립트는 프런트엔드와 백엔드 영역의 프로그래밍 언어로 사용할 수 있는 명실상부한 범용 애플리케이션 개발 언어로 성장했습니다. 따라서 자바스크립트를 학습하는 방식도 이에 걸맞게 변화해야 하며, 이 책은 자바스크립트의 기본 개념과 동작 원리를 깊이 있게 학습하고자 하는 독자를 위해 기획되었습니다.
《모던 자바스크립트 Deep Dive》에서는 자바스크립트를 둘러싼 기본 개념을 정확하고 구체적으로 설명하고, 자바스크립트 코드의 동작 원리를 집요하게 파헤칩니다. 따라서 여러분이 작성한 코드가 컴퓨터 내부에서 어떻게 동작할 것인지 예측하고, 명확히 설명할 수 있도록 돕습니다. 또한 최신 자바스크립트 명세를 반영해 안정적이고 효율적인 코드를 작성할 수 있는 기본기를 다지고, 실전에서 쓰이는 모던 자바스크립트 프레임워크나 도구를 완벽하게 이해하고 활용할 수 있게 도와줍니다.
저자소개
저자 : 이웅모
저자 : 이웅모
일본에서 컴퓨터공학을 전공한 후 일본의 자동차 연구소 공용 웹 프레임워크 개발 프로젝트를 시작으로 프로그래밍 세계에 발을 들여 놓았다. 이후 외국계 IT 기업에서 소프트웨어 컨설턴트로 재직하였고 현재 소프트웨어 개발사의 대표를 맡고 있다. 프런트엔드 튜토리얼 poiemaweb.com의 운영자이며 패스트캠퍼스에서 자바스크립트를 강의 중이다. 지은 책으로 《Angular Essentials》(루비페이퍼, 2018)가 있다.
ㆍ 블로그: https://poiemaweb.com
ㆍ 페이스북: https://www.facebook.com/poiemaweb
ㆍ 유튜브: https://www.youtube.com/channel/UCmcB2RZ8OjfS1vqdaGDxzjw
목차
▣ 01장: 프로그래밍
1.1 프로그래밍이란?
1.2 프로그래밍 언어
1.3 구문과 의미
▣ 02장: 자바스크립트란?
2.1 자바스크립트의 탄생
2.2 자바스크립트의 표준화
2.3 자바스크립트 성장의 역사
____2.3.1 Ajax
____2.3.2 jQuery
____2.3.3 V8 자바스크립트 엔진
____2.3.4 Node.js
____2.3.5 SPA 프레임워크
2.4 자바스크립트와 ECMAScript
2.5 자바스크립트의 특징
2.6 ES6 브라우저 지원 현황
▣ 03장: 자바스크립트 개발 환경과 실행 방법
3.1 자바스크립트 실행 환경
3.2 웹 브라우저
____3.2.1 개발자 도구
____3.2.2 콘솔
____3.2.3 브라우저에서 자바스크립트 실행
____3.2.4 디버깅
3.3 Node.js
____3.3.1 Node.js와 npm 소개
____3.3.2 Node.js 설치
____3.3.3 Node.js REPL
3.4 비주얼 스튜디오 코드
____3.4.1 비주얼 스튜디오 코드 설치
____3.4.2 내장 터미널
____3.4.3 Code Runner 확장 플러그인
____3.4.4 Live Server 확장 플러그인
▣ 04장: 변수
4.1 변수란 무엇인가? 왜 필요한가?
4.2 식별자
4.3 변수 선언
4.4 변수 선언의 실행 시점과 변수 호이스팅
4.5 값의 할당
4.6 값의 재할당
4.7 식별자 네이밍 규칙
▣ 05장: 표현식과 문
5.1 값
5.2 리터럴
5.3 표현식
5.4 문
5.5 세미콜론과 세미콜론 자동 삽입 기능
5.6 표현식인 문과 표현식이 아닌 문
▣ 06장: 데이터 타입
6.1 숫자 타입
6.2 문자열 타입
6.3 템플릿 리터럴
____6.3.1 멀티라인 문자열
____6.3.2 표현식 삽입
6.4 불리언 타입
6.5 undefined 타입
6.6 null 타입
6.7 심벌 타입
6.8 객체 타입
6.9 데이터 타입의 필요성
____6.9.1 데이터 타입에 의한 메모리 공간의 확보와 참조
____6.9.2 데이터 타입에 의한 값의 해석
6.10 동적 타이핑
____6.10.1 동적 타입 언어와 정적 타입 언어
____6.10.2 동적 타입 언어와 변수
▣ 07장: 연산자
7.1 산술 연산자
____7.1.1 이항 산술 연산자
____7.1.2 단항 산술 연산자
____7.1.3 문자열 연결 연산자
7.2 할당 연산자
7.3 비교 연산자
____7.3.1 동등/일치 비교 연산자
____7.3.2 대소 관계 비교 연산자
7.4 삼항 조건 연산자
7.5 논리 연산자
7.6 쉼표 연산자
7.7 그룹 연산자
7.8 typeof 연산자
7.9 지수 연산자
7.10 그 외의 연산자
7.11 연산자의 부수 효과
7.12 연산자 우선순위
7.13 연산자 결합 순서
▣ 08장: 제어문
8.1 블록문
8.2 조건문
____8.2.1 if...else 문
____8.2.2 switch 문
8.3 반복문
____8.3.1 for 문
____8.3.2 while 문
____8.3.3 do...while 문
8.4 break 문
8.5 continue 문
▣ 09장: 타입 변환과 단축 평가
9.1 타입 변환이란?
9.2 암묵적 타입 변환
____9.2.1 문자열 타입으로 변환
____9.2.2 숫자 타입으로 변환
____9.2.3 불리언 타입으로 변환
9.3 명시적 타입 변환
____9.3.1 문자열 타입으로 변환
____9.3.2 숫자 타입으로 변환
____9.3.3 불리언 타입으로 변환
9.4 단축 평가
____9.4.1 논리 연산자를 사용한 단축 평가
____9.4.2 옵셔널 체이닝 연산자
____9.4.3 null 병합 연산자
▣ 10장: 객체 리터럴
10.1 객체란?
10.2 객체 리터럴에 의한 객체 생성
10.3 프로퍼티
10.4 메서드
10.5 프로퍼티 접근
10.6 프로퍼티 값 갱신
10.7 프로퍼티 동적 생성
10.8 프로퍼티 삭제
10.9 ES6에서 추가된 객체 리터럴의 확장 기능
____10.9.1 프로퍼티 축약 표현
____10.9.2 계산된 프로퍼티 이름
____10.9.3 메서드 축약 표현
▣ 11장: 원시 값과 객체의 비교
11.1 원시 값
____11.1.1 변경 불가능한 값
____11.1.2 문자열과 불변성
____11.1.3 값에 의한 전달
11.2 객체
____11.2.1 변경 가능한 값
____11.2.2 참조에 의한 전달
▣ 12장: 함수
12.1 함수란?
12.2 함수를 사용하는 이유
12.3 함수 리터럴
12.4 함수 정의
____12.4.1 함수 선언문
____12.4.2 함수 표현식
____12.4.3 함수 생성 시점과 함수 호이스팅
____12.4.4 Function 생성자 함수
____12.4.5 화살표 함수
12.5 함수 호출
____12.5.1 매개변수와 인수
____12.5.2 인수 확인
____12.5.3 매개변수의 최대 개수
____12.5.4 반환문
12.6 참조에 의한 전달과 외부 상태의 변경
12.7 다양한 함수의 형태
____12.7.1 즉시 실행 함수
____12.7.2 재귀 함수
____12.7.3 중첩 함수
____12.7.4 콜백 함수
____12.7.5 순수 함수와 비순수 함수
▣ 13장: 스코프
13.1 스코프란?
13.2 스코프의 종류
____13.2.1 전역과 전역 스코프
____13.2.2 지역과 지역 스코프
13.3 스코프 체인
____13.3.1 스코프 체인에 의한 변수 검색
____13