번역 작업 진행중입니다.
자바스크립트에서는 스트링과 배열 같은 기본적인 자바스크립트 기능부터 자바스크립트 가장 상단에 놓여진 브라우저 API에 이르기까지 대부분의 것들이 객체(Object)들이다. 사용자는 관련된 함수들과 변수들을 효율적인 패키지로 추상화하거나 편리한 데이터 컨테이너로 작동하는 객체를 만들 수 있다. 언어에 대한 지식을 가지고 더 멀리 나아고자 한다면 자바스크립트의 객체 기반의 본질을 이해하는 것이 중요하다. 따라서 도움이 되는 모듈을 제공한다. 여기서 객체 이론 및 구문을 자세히 알려 줄 것이고, 사용자 정의 객체를 만드는 방법도 알아보도록 하겠다.
사전 지식
이 장을 읽기 전에, 당신은 HTML와 CSS에 어느 정도 알고 있어야 한다. 그렇지 않다면 Introduction to HTML 와 Introduction to CSS 장을 먼저 읽고 오기 바란다.
자바스크립트 객체에 대해 자세히 알아보려면, 자바스크립트 기본 문법에 대해 어느 정도 능숙해야 한다. 이 장을 읽기 전에 JavaScript first steps 와 JavaScript building blocks을 먼저 읽기를 권장한다.
Note: 당신이 컴퓨터/태블릿/혹은 다른 디바이스 상에서 스스로 파일을 만들수 없는 환경이라면, JSBin or Thimble 과 같은 온라인 코딩 프로그램을 이용하여 (거의 모든) 예제 코드를 테스트해 볼 수 있을 것이다.
지침
- Object basics (객체의 기본)
자바스크립트 객체 소개 첫 장에서는, 기본적인 자바스크립트 객체 문법을 볼 것이며, 이전 과정에서 이미 봐왔던 몇몇 자바스크립트 특징들을 다시 들여다볼 것이다. 이것을 통해 우리는 이전에 다루었던 많은 특징들이 사실상 객체(Object)였다는 사실을 알게 될 것이다.- Object-oriented JavaScript for beginners (입문자를 위한 객체지향 자바스크립트)
- 가장 기본적인 것으로, 우리는 Object-oriented JavaScript(OOJS : 객체 지향 자바스크립트)에 초점을 둘 것이다. - 본 장에서는 Obeject- Oriented Programming(OOP : 객체 지향 프로그래밍) 이론의 기본 관점을 보여주고, 자바스크립트가 생성자함수를 이용하여 오브젝트 클래스를 에뮬레이트 하는 방법과 오브젝트 인스턴스를 생성하는 방법에 대해 탐구할 것이다.
- Object prototypes (객체 프로토 타입)
- 프로토타입은 자바 스크립트 오브젝트가 또다른 오브젝트로 특성을 상속시키기 위한 메카니즘이고, 그것들은 고전적인 Object-oriented 프로그래밍 언어들의 상속 메카니즘과 다르게 작동한다. 본 장에서는 그 다름을 탐구하고, 프로토타입 체인이 일하는 방법을 설명하고, 프로토타입의 프라퍼티가 기본 생성자들로 메소드를 추가하기 위해 사용되는 방법을 보여준다.
- Inheritance in JavaScript (자바스크립트의 상속)
- 이제 OOJS에 대한 대부분의 세부사항들에 대해서 설명이 되었으므로, 본 장에서는 "parent(부모)"클래스로부터 특성을 상속받은 "child(자식)" 오브젝트 클래스를 생성하는 방법을 보여줄 것이다. 뿐만 아니라, OOJS를 언제 또는 어디서 사용하면 좋을 지에 대한 몇몇 조언도 기술되어 있다.
- Working with JSON data (JSON과 연동)
- JSON(JavaScript Object Notation)은 자바스크립트 오브젝트 문법상의 구조화된 데이터를 표현하기 위한 표준 텍스트기반 포맷이다. 그래서 주로 웹사이트 상에 데이터를 표현하고 전송하는 데 사용되고 있다(예를 들면, 웹페이지 상에 데이터를 디스플레이할 수 있도록 서버에서 클라이언트로의 데이터 전송). 본 장에서는 데이터를 접근하기 위해 JSON 파싱하고, 또 자신만의 JSON을 작성하는 것처럼 자바스크립트를 사용하여 JSON과 연동할 필요가 있는 모든 것을 보여주고자 한다.
- Object building practice (객체 생성 연습)
- 이전 장들에서 우리는 자바스크립트 오브젝트 이론과 문법 세부사항의 중요한 것들을 보았다. 본 장에서는 커스텀 자바스크립트 오브젝트들을 생성하는 다양한 연습을 하면서 실용적인 예들을 깊이 다루도록 한다.
평가
- Adding features to our bouncing balls demo
- In this assessment, you are expected to use the bouncing balls demo from the previous article as a starting point, and add some new and interesting features to it.

