class in JS

백승용·2021년 4월 14일

Javascript

목록 보기
3/4

기본 문법

class MyClass {
	constructor() { ... }
    method1() {...}
    method2() {...}
    method3() {...}
}
class User {
	constructor(name) { 
    	this.name = name;  
    }
    sayHi() {
      alert(this.name);
    }
}

let user = new User("John");
user.sayHi();
function User(name) {
	this.name = name
}

User.prototype.sayHi = function(){
  alert(this.name);
}

let user = new User("John");
user.sayHi();

클래스란

자바스크립트에서 클래스는 함수의 한 종류이다.

  • 위 코드를 보면 User라는 이름을 가진 함수를 만들고 constructor인 생성자 메서드를 가져온다. 생성자 메서드가 없으면 본문이 비워진 채로 함수가 만들어진다.
  • sayHi 같은 클래스 내에서 정의한 메서드를 User.prototype에 저장한다.
  • new User를 호출해 객체를 만들고 객체의 메서드를 호출하면 함수의 프로퍼티에서 설명한 것처럼 메서드를 프로토타입에서 가져온다.
  • 자바스크립트는 클래스 개념이 없어 class가 나오기 전에는 prototype을 사용하여 class처럼 사용했다.

prototype

https://medium.com/@bluesh55/javascript-prototype-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-f8e67c286b67

0개의 댓글