SORU
30 Temmuz 2011, CUMARTESİ


JavaScript kılma yöntemi

Hadi aşağıdaki kodu var:

function A() {
    function modify(){
       x = 300;
       y = 400;
    }
    var c = new C();
}

function B() {
    function modify(){
       x = 3000;
       y = 4000;
    }
    var c = new C();
}


C = function () {
   var x = 10;
   var y = 20;

   function modify() {
      x = 30;
      y = 40;
   };

   modify();
   alert("The sum is: "   (x y));
}

Şimdi asıl soru, Eğer herhangi bir şekilde wich ben geçersiz kılma yöntemi modify C ile yöntemleri içinde A ve B Java kullanırsınız süper kelime, ama nasıl sana ulaşmak gibi bir şey bu JavaScript?

CEVAP
30 Temmuz 2011, CUMARTESİ


JavaScript miras biraz Java dan farklı görünüyor. Yerel JavaScript nesne sistemi nasıl göründüğünü burada

// Create a class
function Vehicle(color){
  this.color = color;
}

// Add an instance method
Vehicle.prototype.go = function(){
  return "Underway in "   this.color;
}

// Add a second class
function Car(color){
  this.color = color;
}

// And declare it is a subclass of the first
Car.prototype = new Vehicle();

// Override the instance method
Car.prototype.go = function(){
  return Vehicle.prototype.go.call(this)   " car"
}

// Create some instances and see the overridden behavior.
var v = new Vehicle("blue");
v.go() // "Underway in blue"

var c = new Car("red");
c.go() // "Underway in red car"

Ne yazık ki bu biraz çirkin ve çok güzel bir yol yoktur"": üst sınıflar el ile belirtmeniz gerekir' yöntem aramak istediğiniz. süper Sonuç olarak, sınıflar daha iyi iletişim kurmak için çeşitli araçlar vardır. Prototype.js, Backbone.js ya da js OOP yapmak için güzel bir sözdizimi içeren benzer bir kütüphane bakmayı deneyin.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jay Will

    Jay Will

    19 NİSAN 2006
  • KoreanFrogMania님의 채널

    KoreanFrogMa

    18 Aralık 2011
  • SomeOne Pro

    SomeOne Pro

    25 EKİM 2013