javascript定義対象、方法と属性の使用方法(prototype)

5393 ワード

プロトタイプ
プロトタイプの属性を定義して、オブジェクトに属性と方法を追加できます.
構文
object.prototype = {
        : function(){}
}
object.prototype.name=value
javaScriptの中類と対象
  • 定義類
    
     1//       
    var people = function(name){
        this.name = name;
        this.say = function(msg){
            alert(this.name + " say : " +msg);
        }
    }
    //       
    function people(name) {
        this.name = name;
        this.init = function(msg){
            alert(this.name + " say : " +msg);;
        }
    }
    //  
    var people = new people("I");
    people.init("hello");//  :I say hello
    
    //      ,  1
    people.says = function(msg){
        alert(this.name + " say : " +msg);
    }
    people.aa = "aa";
    //  
    people.inits("hellos");//I say Hellos   
    alert(people.aa);//aa
    //          map     ,  
  • はオブジェクトを定義し、呼び出し時に . またはjavaを使用してmapを呼び出す方式と同様に [' '](args)
    
     2//    
    var people = {
        run : function(){
            alert("I can run");
        }   
    };
    //  
    people.run();//   I can run
    people['run']();//  
  • を使用する.
  • 以上の2つの方法は、同時に
  • を使用することはできません.
    Javascriptの方法は三つの種類に分けられます.
  • 類の方法、例1
  • のようです.
  • オブジェクト方法、例2
  • プロトタイプ方法、prototype
     3//   
    var people = function(name){
        this.name = name;
    }
    //    
    people.prototype = {
        introduceChinese : function(){
            alert(this.people +"    "+this.name);
        }
        people;
    };
    
    //  
    
    var p1=new people("Windking");
    p1.people = ' ';
    p1.IntroduceChinese(); 
  • まとめ:
  • javaScript作成対象は定義関数
  • です.
  • javaScriptオブジェクトの定義方法と属性は3つの方法があります.
  • は、例1
  • のように、関数の内部で方法と属性を定義する.
  • 関数名.prototypeを用いて方法と属性を定義し、例3
  • オブジェクト定義方法と属性
  • を使用する.
  • prototypeで属性を定義する場合は、定義方法の後に置く必要があります.属性はundefined
  • です.
  • は、javascriptを使用して属性を定義し、javaのように厳格ではなく、インスタンスがオブジェクトを通じて、属性
  • を定義することもできる.
  • prototypeと関数の内部定義方法と属性を使用して、その役割は同じです.いずれも実用化関数が必要で、
  • を使用することができます.
  • は、直接に関数名を使用して方法と属性を定義し、javaのような静的な当然性と変数を定義する.
       function scriptBean(){}
       //    
       scriptBean.sayHello = function(msg){
        console.log(this.name + " say : " +msg);
       }
       //    
       scriptBean.name = "scriptBean";
       //  
       scriptBean.sayHello("hello");