JS 클래스 생성

1129 단어
1.es5
     this.name = name;
     this.age = age;
 }
 Person.prototype.getName = function(){
     return this.name;
 }
 var person1 = new Person('parksoyeon',25);
 console.log(person1.getName()); //parksoyeon
  : , , this , 。
    this , new  , ;
   prototype :
         Person.prototype.getName = function(){};
         Person.prototype = {
             getName : function(){}
         }

2.es6
  class Person{
      constructor(){
        this.name = 'jack'
      }
      getName(){
        console.log(this.name)
      }
  }
  var person1 = new Person();
  console.log(person1.getName()); //jack
   :es6 class es5 ,constructor , this ,getName  ;

3. 객체의 보안 모드 만들기
  function Person(name,age){
    this.name = name;
    this.age = age;
  }
  // new , Person(), Person return, undefined
  var person = Person('jack',18);// person undefined
  // new , 
  function Person(name,age){
    if(this instanceof Person){
        this.name = name;
        this.age = age; 
    }else{
        return new Person(name,age);
    }
  }

좋은 웹페이지 즐겨찾기