js 대상 에 대한 기본 이해 와 세 가지 생 성 방식

1613 단어 학습 노트
대상 을 대상 으로 하 는 언어 는 하나의 표지 가 있 는데 그것 은 바로 그들 이 모두 유형의 개념 을 가지 고 클래스 를 통 해 같은 속성 과 방법 을 가 진 여러 개의 대상 을 만 들 수 있다 는 것 이다.
그러나 ECMAScript 에 서 는 클래스 개념 이 없 지만 우 리 는 다른 방식 으로 대상 을 대상 으로 하 는 클래스 를 모 의 할 수 있다.
공장 모델: 공장 모델 은 소프트웨어 공장 분야 에서 널리 알려 진 디자인 모델 이다.
구조 함수 모드: 예 를 들 어 ECMAScript 의 Array, Object, Date 등 은 모두 구조 함 수 를 통 해 만들어 집 니 다.
//1.    
      function Person(name,age,sex){
        var obj = new Object();
        obj.name = name;
        obj.age = age;
        obj.sex = sex;
        obj.sayName = function(){
          console.log(this.name);
        }
        return obj;
      }
      var p = Person('  ',20,' ');
      console.log(p.age);
      p.sayName();


      //2.      
      function Person(name,age,sex){
        this.name = name;
        this.age = age;
        this.sex = sex;
        this.sayName = function(){
          console.log(this.sex);
        }
      }

      var p = new Person('  ',25,' ');
      console.log(p.age);
      p.sayName();

      //3.js         
      function Person(name,age,sex){
        this.name = name;
        this.age = age;
        this.sex = sex;
        this.sayName = function(){
          console.log(this.sex);
        }
      }

      //1.         
      var obj = new Person('  ',25,' ');
      console.log(obj.sex);

      //2.           
      Person('  ',25,' ');  //             ,     window 
      console.log(name);

      //3.  call apply  
      var o = new Object();
      Person.call(o,'  ',123,' ');
      console.log(o.age);

좋은 웹페이지 즐겨찾기