Heim  >  Artikel  >  Web-Frontend  >  Zusammenfassung mehrerer gängiger Methoden zum Schreiben von objektorientiertem Code in JavaScript

Zusammenfassung mehrerer gängiger Methoden zum Schreiben von objektorientiertem Code in JavaScript

伊谢尔伦
伊谢尔伦Original
2017-07-22 13:31:011155Durchsuche

1. Fabrikweise


var Circle = function() {
  var obj = new Object();
  obj.PI = 3.14159;
  
  obj.area = function( r ) {
    return this.PI * r * r;
  }
  return obj;
}

var c = new Circle();
alert( c.area( 1.0 ) );

2 🎜>

function Circle(r) {
   this.r = r;
}
Circle.PI = 3.14159;
Circle.prototype.area = function() {
 return Circle.PI * this.r * this.r;
}

var c = new Circle(1.0);  
alert(c.area());

3.json-Schreibmethode


var Circle={
  "PI":3.14159,
 "area":function(r){
     return this.PI * r * r;
    }
};
alert( Circle.area(1.0) );

4 die Essenz ist die gleiche. Die erste ist die gleiche wie


var Circle=function(r){
    this.r=r;
}
Circle.PI = 3.14159; 
Circle.prototype={
  area:function(){
    return this.r*this.r*Circle.PI;
  }
}
var obj=new Circle(1.0);
alert(obj.area())
Circle.PI = 3.14159; das kann in das Attribut eingefügt und so geschrieben werden .PI=3.14159;

häufig verwendet Ein erweitertes Beispiel für die erste und dritte Schreibweise

Die dritte Schreibweise


var show={
    btn:$('.p1'),
    init:function(){
      var that=this;
      alert(this);
      this.btn.click(function(){
          that.change();
          alert(this);
        })
      
    },
    change:function(){
      this.btn.css({'background':'green'});

    }
  }
  show.init();
Es sollte beachtet werden, dass das Zeigeproblem dabei ist

Das obige ist der detaillierte Inhalt vonZusammenfassung mehrerer gängiger Methoden zum Schreiben von objektorientiertem Code in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn