간편결제, 신용카드 청구할인
네이버페이 1%
(네이버페이 결제 시 적립)
NH(올원페이)카드 12% (14,260원)
(3만원 이상 결제/최대 1만원 할인)
북피니언 롯데카드 30% (11,340원)
(최대할인 3만원 / 3만원 이상 결제)
하나SK 북&카드 30% (11,340원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (12,960원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (14,580원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (15,070원)
(최대할인 3만원 / 3만원 이상 결제)
Close

인사이드 자바스크립트 : : 핵심 개념과 원리를 정확하게. jQuery, Node.js, 클로저의 개념까지

2013년 9월 9일 이후 누적수치입니다.

판매지수 3,505
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

18,000원

  • 16,200 (10%할인)

    900P (5%적립)

할인혜택
적립혜택자동적립
배송정보
주문수량
감소 증가

이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

    • 이벤트/기획전

    • 연관도서

    • 사은품(3)

    책소개

    이 책의 목적은 자바스크립트의 핵심 원리, 언어적 특성을 정확하고 알기 쉽게 설명하는 것이다. 물론 이 책이 자바스크립트의 모든 것을 다룬 바이블은 아니다. 그러나 자바스크립트를 제대로 공부하고자 하는 개발자에게 여러 자바스크립트 응용 기술들을 소화할 수 있는 기초 체력을 기를 수 있게 도와주는 좋은 가이드가 될 것이다.

    출판사 서평

    정말로 중요한 것은 자바스크립트의 핵심 원리를 정확하게 이해하는 것이다

    모든 학문 분야가 마찬가지겠지만, 특히 IT 분야에서 새로운 지식을 습득할 때 가장 중요한 것은 바로 그 분야의 핵심 원리를 정확히 이해하는 것이다. 이러한 원리를 정확히 이해하지 않은 지식으로 프로젝트를 진행했다가는 초기에는 빠른 성과를 낼 수 있을지 모르지만, 결국에는 대충 넘어갔던 부분이 발목을 잡을 것이며 이는 프로젝트 지연으로 이어질 수 있다.
    자바스크립트가 굉장히 쉬운 언어이며, 무조건 코드를 가져다 쓰면 쉽게 개발할 수 있는 것으로 생각하는 개발자가 의외로 많다. 물론 프로젝트 초기에는 이런 식으로 결과물을 만들어 낼 수 있다. 그러나 프로젝트 범위가 점점 늘어나면 자바스크립트 특성에 대해서 제대로 이해하지 않고 넘어갔던 사소한 부분들이 문제를 발생시키고 급기야 자바스크립트 언어를 통해 서버 기반 프로그래밍을 할 수 있게끔 해주는 Node.js 프로그래밍까지 진행한다면 그 어려움은 이루 말할 수 없을 만큼 커진다. Node.js 개발 경험이 있는 개발자들은 아마 이해할 수 있을 것이다. 자바스크립트 언어의 특성을 제대로 이해하는 것이 얼마나 중요한 것인지를.

    이 책의 특징과 장점
    - 자바스크립트 언어의 핵심 개념을 제대로 전달한다. 국내 개발환경, 입문/초급 개발자 수준에 맞춰 그림과 rule을 통해 이해하기 쉽게 설명한다.
    - jQuery 1.0 소스 분석을 통해서 실제 프로젝트에서 사용된 각종 자바스크립트의 핵심 개념을 설명한다. 이는 실용성을 높여준다.

    어떤 독자를 위한 책인가?
    - 자바스크립트/ Node.js 입문자, 초급자
    - 자바스크립트의 경험을 가지고 있으나, 핵심 개념에 대한 이해도가 적은 개발자
    - 자바스크립트 주요 라이브러리(jQuery등)의 내부를 분석하고, 라이브러리나 프레임워크를 개발하고 싶어하는 개발자
    - [더글라스 크락포드의 자바스크립트 핵심 가이드](한빛미디어, 2008)를 어렵게 느끼는 개발자

    추천사

    시중에 나와있는 많은 자바스크립트 관련 서적과 비교하여 가장 기본적인 원리와 내부 구조에 대해 상세하게 설명되어 있다. jQuery나 Node.js처럼 대중적으로 많이 사용되는 자바스크립트 기술들을 이해하고 활용하는 데 필수로 알아야 되는 내용들이 담겨있으며, 특히 중고급 개발자들이 꼭 알아야 할 함수형 언어(Functional Language)와 클로저 개념에 대해 상세히 기술되어 있다.
    - 정해권/ 삼성전자 선임연구원

    C++, Java, C# 같은 클래스 기반의 객체지향 언어에 익숙한 개발자가 자바스크립트를 처음 접하면 굉장히 많은 불만을 토로합니다. 이는 자바스크립트를 클래스 기반의 객체지향 언어로 바라보기 때문입니다. 자바스크립트라는 프로토타입 기반의 객체지향 언어가 클래스 기반의 객체지향 언어와 무엇이 다른지를 쉽게 알 수 있게 해주는 책입니다.
    - 윤인성/ 한빛미디어에서 [모던 웹 디자인을 위한 HTML5+CSS3 입문] 등 다수의 책을 집필한 저자

    목차

    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 이벤트 핸들러 특징

    본문중에서

    모든 학문 분야가 마찬가지겠지만, 특히 IT 분야에서 새로운 지식을 습득할 때 가장 중요한 것은 바로 그 분야의 핵심 원리를 정확히 이해하는 것이다. 이러한 원리를 정확히 이해하지 않은 개발 관련 지식으로 프로젝트를 진행했다가는 초기에는 빠른 성과를 낼 수 있을지 모르지만, 결국에는 안다고 대충 넘어갔던 부분이 개발자의 발목을 잡을 것이며 이는 프로젝트 지연으로 이어질 수 있다.
    필자가 처음에 자바스크립트 관련 공부를 처음 시작했을 때도 바로 이와 같은 실수를 범했었다. 자바스크립트를 배우기 전까지만 해도 필자의 주요 언어는 C, Java였다. 자바스크립트를 제대로 배우지 않은 여느 개발자처럼 필자는 자바스크립트가 굉장히 쉬운 언어이며, 무조건 코드를 가져다 쓰면 쉽게 개발할 수 있는 것으로 생각했었다. 처음에는 이런 식으로 결과물을 만들어 낼 수 있었지만, 점점 프로젝트 범위가 늘어나면서 자바스크립트 특성에 대해서 제대로 이해하지 않고 넘어갔던 사소한 부분들이 문제를 일으켰으며, 이 때문에 많은 고생을 했던 기억이 아직도 생생하다.
    급기야 자바스크립트 언어를 통해 서버 기반 프로그래밍을 할 수 있게끔 해주는 Node.js 프로그래밍을 진행했을 때 필자는 결국 두 손을 들고 말았다. Node.js 개발 경험이 있는 개발자들은 아마 이해할 수 있을 것이다. 자바스크립트 언어의 특성을 제대로 이해하는 것이 얼마나 중요한 것인지를.
    아무튼 그 결과 필자는 다시 자바스크립트 기본 문법부터 제대로 이해하며 공부를 시작했다. 역시나 필자가 안다고 넘어갔던 많은 자바스크립트의 문법들이 자세히 살펴보니 실제로는 정확히 아는 것이 아니었던 것이다. 학습법에 대해서 얘기할 때 가장 중요한 것이 바로 자신이 무엇을 모르는지를 정확히 파악해야 한다는 것이다. 그래야 무엇을 집중해서 공부해야 하는지를 정확히 파악할 수 있기 때문이다. 이후 필자는 자바스크립트 책을 정독하며 자바스크립트의 언어적 특성을 이해하기 위해 노력했다.
    이 책은 필자의 이러한 노력의 산물이다. 요즘도 마찬가지이지만, 집필 당시에도 많은 자바스크립트 관련 서적이 출간되고 있었고 다양한 예제 및 설명을 다루고 있었지만, 자바스크립트의 문법과 언어적인 특성을 국내 개발자들의 입맛에 맞게 다룬 서적을 찾기 힘들었다. 그래서 필자는 이 책의 공저자인 고현준님과 함께 자바스크립트 입문자나 중급 개발자를 위해 자바스크립트 핵심을 가장 잘 설명한 국내 서적을 집필을 하기로 마음 먹게 됐고, 그 결과물이 바로 이 책이 된 것이다.
    물론 이 책은 자바스크립트의 모든 것을 다룬 바이블은 아니다. 그러나 자바스크립트를 제대로 공부하고자 하는 독자들에게 여러 자바스크립트 응용 기술들을 소화할 수 있는 기초 체력을 기를 수 있게 도와주는 좋은 가이드가 될 것이라 믿어 의심치 않는다.
    끝으로 이 책이 나오게 끔 항상 응원과 격려를 아끼지 않았던 나의 사랑하는 아내 현정이와 사랑스런 아들 승민에게 고마움을 전한다.
    (/ '저자 송형주 서문' 중에서)

    필자가 처음으로 웹 개발이라는 것을 해 본 것은 십여 년 전이다. 그 때 필자는 대학교 초년생의 컴퓨터공학도였고, 당시 인기 있던 perl을 제치고 서버사이드 웹프로그래밍 언어로서 PHP와 ASP가 부상하고 있을 때였다. 당시에도 필자는 자바스크립트를 사용했던 기억이 있다. 로그인 확인 혹은 에러를 알리기 위한 팝업을 띄우기 위해 자바스크립트를 사용했던 것이다. window.open이라는 내장함수를 이용하였던 것으로 기억한다. 그때만 해도 자바스크립트는 이런 단순 기능을 지원하기 위해 존재하는 간단한 스크립트라고 생각했었다. 당연히 그때는, 십 년이 흐른 후에 필자가 다시 이 자바스크립트를 제대로 공부하기 시작하리라곤 상상도 못했다.
    약 10년이 지나고 필자는 회사에서 우연히 파이어폭스 관련 프로젝트에 들어가서 업무를 보게 되었다. 당시에 파이어폭스 익스텐션을 만들기 위해 자바스크립트 기반의 XUL이라는 것을 알아야 했다. 그때도 이정도 스크립트 언어는 금방 익힐 수 있을 것이라고 생각했던 것 같다. 하지만 자바스크립트는 생각보다 단순한 것이 아니었다. 이 후에 jQuery라는 라이브러리를 알게 되고, 이 jQuery 소스를 열어보고 나서야, 자바스크립트를 제대로 익히기 위해서는 많은 시간이 필요하다는 것을 깨달았다.

    function object(o) {
    function F() {}
    F.prototype = o;
    return new F();
    }

    자바스크립트를 본격적으로 공부해 보고자 마음먹고, 인터넷에서 관련된 자료를 찾아보던 시절에 발견한 더글라스 크락포드의 코드이다. 글에 적혀 있는 설명으로는 객체를 상속받는 새로운 객체를 반환하는 함수라는데, 그때만 해도 필자는 이 세 줄짜리 코드가 도대체 무엇을 의미하는지 알 수가 없었고, 상당한 좌절을 겪어야 했다(참고로 이 코드는 책에 당연히(?) 설명이 되어 있다). 여러 가지 자료들을 인터넷에서 모아서 이 책을 같이 쓴 송형주 저자와 이 생경한 언어를 공부하기 시작했다. 공부를 하면서 하나씩 하나씩 의문이 풀릴 때 느꼈던 희열이 지금까지 기억에 남아 있는 걸 보면 자바스크립트가 어렵긴 어려웠었나 보다. 이 시기에 도움이 되었던 자료들은 모두 영어로 되어 있는 외국인이 쓴 자료들이 대부분이었고, 참고할 만한 서적 역시 많지 않았다. 이마저도 모두 외국의 유명저자가 쓴 번역서들이었다. 그때 이해하기 쉽게 잘 쓰여진 한국어 서적이 한 권만 있었더라도 우리는 훨씬 수월하게 자바스크립트를 익힐 수 있었을 것이다.
    이에 자바스크립트의 핵심개념을 간과하지 않으면서 보다 이해하기 쉬운 책을 써 보자는 데 의견을 모았고, 여러 가지 어려움 끝에 이제서야 그간의 노력들이 빛을 보기 직전의 순간에 와 있다. 지금까지 함께 고생한 필자의 친구이자 형님인 송형주 저자와 한빛미디어 송성근 차장님께 감사의 말씀을 드린다. 그리고 결혼 직전에 원고 작업 때문에 큰 신경을 쓰지 못해 못내 미안했었는데, 진심으로 필자를 밀어준 아내에게도 고맙다는 말을 전하고 싶다.
    부디 이 책을 읽은 독자들이 자바스크립트 언어의 이해에 작게나마 도움이 되길 바라며, 서문을 마친다.
    (/ '저자 고현준 서문' 중에서)

    저자소개

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    고려대학교 컴퓨터교육과 재학 중에 가우리 정보통신에서 병역특례를 마쳤다. 대학을 졸업하고 현재 삼성전자 소프트웨어센터에서 TIZEN 플랫폼의 gstreamer를 이용한 멀티미디어 프레임워크를 개발하고 있다. 자바스크립트는 취미로 시작해서 정보를 공유하고자 송형주 저자와 함께 블로그를 운영하게 되었고, 다양한 스프트웨어 개발과 관련된 경험과 정보에 대한 공유에 많은 관심을 가지고 있다.

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    삼성전자를 거쳐 현재는 SKT 네트워크 기술원 Device Tech.랩에서 디바이스 기반 서비스 플랫폼 개발 업무를 진행 중이다. 특히 안드로이드와 같은 모바일 소프트웨어 플랫폼의 설계 및 동작 원리에 관심이 많으며, 최근 들어서는 JavaScript나 Node.js와 같은 웹 기술의 매력을 알아 가고 있는 중이다. 틈틈이 쌓은 개발 관련 지식을 정리하고, 이를 책으로 엮어서 여러 개발자들과 공유하는 것에 소소한 재미를 느끼는 평범한 개발자이다. 저서로는 [인사이드 안드로이드](위키북스, 2009)가 있다

    리뷰

    9.6 (총 0건)

    기대평

    작성시 유의사항

    평점
    0/200자
    등록하기

    기대평

    9.0

    교환/환불

    교환/환불 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

    교환/환불 가능 기간

    고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

    교환/환불 비용

    고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

    교환/환불 불가사유

    반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
    배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

    소비자 피해보상

    소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
    교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

    기타

    도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

    배송안내

    • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

    • 배송비

    도서(중고도서 포함) 구매

    2,000원 (1만원이상 구매 시 무료배송)

    음반/DVD/잡지/만화 구매

    2,000원 (2만원이상 구매 시 무료배송)

    도서와 음반/DVD/잡지/만화/
    중고직배송상품을 함께 구매

    2,000원 (1만원이상 구매 시 무료배송)

    업체직접배송상품 구매

    업체별 상이한 배송비 적용