簡単にクラス関数の理解(初心者を試してみます)

9206 ワード

記事の目次
  • ES 6の紹介
  • は、クラス関数
  • を作成します.
  • 関数の継承
  • ES 6の紹介
    ES6         JavaScript     ,        ” ”    (    ,                ,              ),     (=>)、class  。
    
    class ES6       ,           ,  class     ES5    。
    
    クラス関数を作成します.
  • は、まず、S 5を見て、class
     function Person(name,age,sex){
     this.name = name;
     this.age = age;
     this.sex = sex;
    }
    
    Person.prototype.sayName = function(){
     alert(this.name)
    }
    
    Person.prototype.setName = function(newName){
     this.name = newName;
    }
    var p1 = new Person('lili',12,' ')
    
    を作成し、newキーワードで呼び出された関数を構造関数といいます.
  • は次にES 6の方式でクラス関数
  • を作成する.
  • は何がクラスの関数ですか?
    クラスはキーワードで、後にクラス名をつけて、クラス名の頭文字は大文字で、とったのはラクダ峰の命名の法則です.類名の後は{}ですが、{}文を直接書いてはいけません.方法はキーワードを使う必要がありません.方法と方法の間にはコンマがなく、キーの値ではありません.
  •   class Person {
        constructor(name,age,sex){  //       ,   new ,     
            this.name = name;
            this.age = age;
            this.sex = sex;
        }
        
        sayName(){
            alert(this.name);
        }
        
        setName(newName){
            this.name = newName;
        }
        
        static add(){              //        static   
            console.log('add');
        }
        
        static address='   '    //        static   
    }
    
    let p2 = new Person('  ',24,' ');
    
    typeof Person // "function"
    
    Person === Person.prototype.constructor // true
    
  • 注:
  • 実例の属性はconstructorで定義しなければなりません.
    関数の継承
  • es 5の継承方式
  •   function Student(){
      Person.apply(this,arguments);
    }
    
    Student.prototype = Object.create(Person.prototype);
    
    Student.prototype.constructor = Student;
    
  • es 6の継承方式
  •  class student extends Person{ //clss       extends       
        constructor(name,age,sex){
            super(name,age,sex);
        }
        setId(id){  //              ,  function
            this.id = id;
        }
    }
    
    注:静的な方法と静的な属性はインスタンスに呼び出されません.クラスコールを使用しなければなりません.
    この文章は初めてclass関数に触れた新人です.