10/16 자바스크립트 공부

자바스크립트의 데이터 타입에 대해 알아보자

  • 숫자 : 정수/실수 구분 없이 실수로만 표기함, 너무 크거나 작으면 e표기법(10.232+121e 뭐시기 이런식?)으로 사용 가능
  • 문자열 : 큰따옴표나 작은따옴표로 둘러싸인 문자의 집합(숫자도 이렇게 쓰면 문자열임)
  • Boolean : 참/거짓을 표현하는 타입
  • Symbol : 유일하고 변경할 수 없게 한 타입으로 식별자로 사용 가능
  • undefined – 아예 데이터 타입을 처음부터 정하지 않음
  • null – object 타입의 값이 정해지지 않은 것
  • object – property와 메소드를 같은 이름으로 묶어놓은 집합체로 자바스크립트의 기본 타입

JavaScript의 객체(object)는 기본 타입으로 이름과 값으로 구성된 프로퍼티의 정렬되지 않은 집합이다. 이때 프로퍼티의 값이 함수가 올 경우 메소드라고 한다.

자바스크립트에서 객체를 생성하기

  1. 리터럴 표기

var obj = {

property1 : 1

property2 : 2

};

이렇게 생성되었을 경우 obj.property1 이런식으로 사용 가능

2.  생성자를 이용

위의 소스를 선언한 이후 var obx = new obj(); 이렇게 생성자를 만들어서 obx.property1 이런식으로 사용 가능

3. Object.create : 지정된 프로토타입 객체와 프로퍼티를 가지고 새로운 객체를 생성

자바스크립트의 상속은 클래스 기반이 아닌 프로토타입 기반이다.

상속의 장점 : 새로운 프로그램 요구시 기존 클래스를 수정하여 재사용 할 수 있고 클래스간 종속관계가 형성되어 관계의 조직화를 이끌어낸다.

자바스크립트에서는 현재 존재하는 객체를 프로토타입으로 사용하여 해당 객체를 복재하여 재사용하는 것이 상속의 개념이다.

Prototype(프로토타입) : 하나 이상의 객체에서 상속을 받을 때 정보를 제공해주는 객체다.

* 자바스크립트에서는 모든 오브텍트가 프로토타입 체인이 적용되어 기본으로 상속받는 프로토타입 외에도 Object.prototype를 상속 받는다.

프로토타입을 생성하기 이해선 객체 생성자 함수를 작성해야 한다.

(Code)

function Dog(color,name,age){

this.color = color

this.name = name

this age = age

};

var myDog = new Dog(“white”, “Maru”, “2”); //Dog라는 프로토타입을 갖는 객체인 myDog가 생생된 것이다.

var friendDog = new Dog(“black”, “Darae”, “1”); //Dog라는 프로토타입을 갖는 객체인 friendDog가 생생된 것이다.

이 프로퍼티들은 객체명.프로퍼티명 식으로 접근할 수 있다. myDog.color 라던지 friendDog.age 라던지.

  • 생성된 객체에 프로퍼티 및 메소드를 추가할 수 있다. 이때는 이미 생성된 객체에만 적용되므로 이후 생성된 객체엔 적용되지 않는다.
  • 프로토타입에도 프로퍼티 및 메소드를 추가할 수 있다. 이때 생성자 함수에 직접 추가해야 이후 생성되는 모든 객체에도 적용할 수 있다.
  • 프로토타입 프로퍼티를 사용시 현재 존재하는 프로토타입에 새로운 프로퍼티나 메소드를 손쉽게 추가할 수 있다.

관련 글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.