class object 차이점

6148 단어 JavaScriptJavaScript

class
-es6 에서 도입됨
-template 이라고 불리기도 함 class 자체에는 데이터가 들어있지 않고 틀 템플릿만 정의해 놓는 것 이라고 생각하면 됨
틀 같은거
-declare once
-no data in
-클래스는 정의만 한 것이라 메모리에 올라가지는 않음
class 를 이용해서 data 넣어서 만드는 것 = object

object
-instance of a class
-careated many times
-data 가 들어있음
-메모리에 올라감
-클래스에 선언된 모양 그대로 생성된 실체를 말한다

//class -template 
// object instance of a class

class person{
  //constructor
  constructor(name, age){
    //fields
    this.name = name;
    this.age = age;
  }
  
  //methods
  speak() {
  console.log(`${this.name}:hello!`);
  }
}

const ellie = new person('ellie' , 20);
console.log(ellie.name); 
console.log(ellie.age);
ellie.speak(); 

class User {
 constructor(firstName , lastName , age ){
 	this.firstName = firstName;
   	this.lastName = lastName;
   	this.age = age;
   
 }
 get age(){
   return this.age
 }
   set age(value){
     this.age = value;
 }
  
}
const user1 = new User( 'steve' , 'jab', -1);
console.log(user1.age);

좋은 웹페이지 즐겨찾기