본문 바로가기

클라이언트/JavaScript
[자바스크립트(JavaScript)] 클래스

// class

- 객체를 생성하는 공장

class 클래스명 {
    constructor() {
    }
}


- constructor 함수를 이용하여 객체의 초기 값을 설정할 수 있다. (항상 추가하기)
     > 자바스크립트는 객체 생성 시 자동으로 constructor 함수를 호출!

※ construnctor 함수 : 객체의 초기 값을 지정하기 위해서 객체가 생성될 때 실행되기로 약속된 함수

- 객체.prototype을 해주지 않아도 prototype에 method 입력이 되어 편하다.


 

class Person {
    constructor(name, first, second){
        this.name = name;
        this.first = first;
        this.second = second;
    }

    sum() {
        return 'class: ' + (this.first+ this.second)
    }
}

var hanee = new Person('hanee', 10, 20);
console.log('hanee', hanee);
console.log('hanee.sum()', hanee.sum());

console.log();

class Color {
  constructor(r, g, b) {
    this.r = r;
    this.g = g;
    this.b = b;
  }
  innerRGB() {
    const { r, g, b } = this;
    return `(${r}, ${g}, ${b})`;
  }
  rgb() {
    return `rgb${this.innerRGB()}`;
  }
  rgba(a = 1.0) {
    return `rgba(${this.innerRGB()}, ${a})`;
  }
  hex() {
    const { r, g, b } = this;
    return '#' + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1);
  }
}

const c1 = new Color(25, 67, 89, 'tomato');