CHAPTER 1 자바스크립트 기본 개요
1.1 소개
1.2 자바스크립트 활용 범위
1.2.1 웹 개발
1.2.2 서버 개발
1.2.3 애플리케이션 개발
1.3 자바스크립트의 핵심 개념
1.3.1 객체
1.3.2 함수
1.3.3 프로토타입
1.3.4 실행 컨텍스트와 클로저
1.4 자바스크립트와 객체지향 프로그래밍
1.5 자바스크립트와 함수형 프로그래밍
1.6 자바스크립트의 단점
CHAPTER 2 자바스크립트 개발 환경
2.1 웹스톰 설치 및 실행
2.2 프로젝트 생성 및 프로그래밍
2.3 테스트 및 디버깅
2.3.1 테스트
2.3.2 디버깅
CHAPTER 3 자바스크립트 데이터 타입과 연산자
3.1 자바스크립트 기본 타입
3.1.1 숫자
3.1.2 문자열
3.1.3 불린값
3.1.4 null과 undefined
3.2 자바스크립트 참조 타입(객체 타입
3.2.1 객체 생성
3.2.2 객체 프로퍼티 읽기/쓰기/갱신
3.2.3 for in 문과 객체 프로퍼티 출력
3.2.4 객체 프로퍼티 삭제
3.3 참조 타입의 특성
3.3.1 객체 비교
3.3.2 참조에 의한 함수 호출 방식
3.4 프로토타입
3.5 배열
3.5.1 배열 리터럴
3.5.2 배열의 요소 생성
3.5.3 배열의 length 프로퍼티
3.5.4 배열과 객체
3.5.5 배열의 프로퍼티 동적 생성
3.5.6 배열의 프로퍼티 열거
3.5.7 배열 요소 삭제
3.5.8 Array() 생성자 함수
3.5.9 유사 배열 객체
3.6 기본 타입과 표준 메서드
3.7 연산자
3.7.1 + 연산자
3.7.2 typeof 연산자
3.7.3 == (동등) 연산자와 === (일치) 연산자
3.7.4 !! 연산자
CHAPTER 4 함수와 프로토타입 체이닝
4.1 함수 정의
4.1.1 함수 리터럴
4.1.2 함수 선언문 방식으로 함수 생성하기
4.1.3 함수 표현식 방식으로 함수 생성하기
4.1.4 Function() 생성자 함수를 통한 함수 생성하기
4.1.5 함수 호이스팅
4.2 함수 객체: 함수도 객체다
4.2.1 자바스크립트에서는 함수도 객체다
4.2.2 자바스크립트에서 함수는 값으로 취급된다
4.2.3 함수 객체의 기본 프로퍼티
4.3 함수의 다양한 형태
4.3.1 콜백 함수
4.3.2 즉시 실행 함수
4.3.3 내부 함수
4.3.4 함수를 리턴하는 함수
4.4 함수 호출과 this
4.4.1 arguments 객체
4.4.2 호출 패턴과 this 바인딩
4.4.3 함수 리턴
4.5 프로토타입 체이닝
4.5.1 프로토타입의 두 가지 의미
4.5.2 객체 리터럴 방식으로 생성된 객체의 프로토타입 체이닝
4.5.3 생성자 함수로 생성된 객체의 프로토타입 체이닝
4.5.4 프로토타입 체이닝의 종점
4.5.5 기본 데이터 타입 확장
4.5.6 프로토타입도 자바스크립트 객체다
4.5.7 프로토타입 메서드와 this 바인딩
4.5.8 디폴트 프로토타입은 다른 객체로 변경이 가능하다
4.5.9 객체의 프로퍼티 읽기나 메서드를 실행할 때만 프로토타입 체이닝이 동작한다
CHAPTER 5 실행 컨텍스트와 클로저
5.1 실행 컨텍스트 개념
5.2 실행 컨텍스트 생성 과정
5.2.1 활성 객체 생성
5.2.2 arguments 객체 생성
5.2.3 스코프 정보 생성
5.2.4 변수 생성
5.2.5 this 바인딩
5.2.6 코드 실행
5.3 스코프 체인
5.3.1 전역 실행 컨텍스트의 스코프 체인
5.3.2 함수를 호출한 경우 생성되는 실행 컨텍스트의 스코프 체인
5.4 클로저
5.4.1 클로저의 개념
5.4.2 클로저의 활용
5.4.3 클로저를 활용할 때 주의사항
CHAPTER 6 객체지향 프로그래밍
6.1 클래스, 생성자, 메서드
6.2 상속
6.2.1 프로토타입을 이용한 상속
6.2.2 클래스 기반의 상속
6.3 캡슐화
6.4 객체지향 프로그래밍 응용 예제
6.4.1 클래스의 기능을 가진 subClass 함수
6.4.2 subClass 함수와 모듈 패턴을 이용한 객체지향 프로그래밍
CHAPTER 7 함수형 프로그래밍
7.1 함수형 프로그래밍의 개념
7.2 자바스크립트에서의 함수형 프로그래밍
7.2.1 배열의 각 원소 총합 구하기
7.2.2 팩토리얼
7.2.3 피보나치 수열
7.3 자바스크립트에서의 함수형 프로그래밍을 활용한 주요 함수
7.3.1 함수 적용
7.3.2 커링
7.3.3 bind
7.3.4 래퍼
7.3.5 반복 함수
CHAPTER 8 jQuery 소스 코드 분석
8.1 jQuery 1.0 소스 코드 구조
8.1.1 jQuery 함수 객체
8.1.2 변수 $를 jQuery() 함수로 매핑
8.1.3 jQuery.prototype 객체 변경
8.1.4 객체 확장 - extend() 메서드
8.1.5 jQuery 소스 코드의 기본 구성 요소
8.2 jQuery의 id 셀렉터 동작 분석
8.2.1 $("#myDiv") 살펴보기
8.2.2 $("#myDiv").text() 살펴보기
8.3 jQuery 이벤트 핸들러 분석
8.3.1 jQuery 이벤트 처리 예제
8.3.2 .click() 메서드 정의
8.3.3 $('#clickDiv').click() 호출 코드 분석
8.3.4 $('#clickDiv').bind() 메서드 분석
8.3.5 Click 이벤트 핸들러 실행 과정
8.3.6 jQuery 이벤트 핸들러 특징