2009-05-29 5 views

Répondre

2

Javascript utilise par défaut OO par prototypage. Toutefois, si vous utilisez une bibliothèque de prototypes, par exemple, vous pouvez utiliser Class.create().

http://prototypejs.org/api/class/create

Il vous permettra de créer (ou héritez) une classe, après que vous instancierez ses instances avec de nouveaux.

D'autres bibliothèques ont probablement des fonctionnalités similaires.

+0

Certains le font. jQuery ne le fait pas, car il s'attend à ce que vous soyez plus susceptible de gérer les collections jQuery qu'avec les classes. – Nosredna

3
function Foo() { 
    // constructor 
} 

Foo.prototype.bar = function() { 
    // bar function within foo 
} 
+0

Je pense que vous avez une "fonction" supplémentaire au début de 'bar'. :-) –

+0

Ouais. Aussi, n'oubliez pas de mentionner que vous devez utiliser Foo(). – alamar

+0

whoops fixe, je ne suis pas habitué à écrire javascript oo. –

0

C'est "en quelque sorte" possible. Prototype a une aide intégrée pour écrire des classes dans JS. Jetez un oeil à this thorough description de la façon dont vous pouvez le faire.

var namedClass = Class.create({ 
    initialize: function(name) { 
     this.name = name; 
    } 

    getName: function() { 
     return this.name; 
    } 
}); 
var instance = new namedClass('Foobar'); 
0

JavaScript est basé sur les objets et non sur les classes. Il utilise l'héritage prototypique, pas l'héritage classique.

JavaScript est malléable et facilement extensible. En conséquence, il existe de nombreuses bibliothèques qui ajoutent un héritage classique à JavaScript. Cependant, en les utilisant, vous risquez d'écrire du code difficile à suivre pour la plupart des programmeurs JavaScript.

Questions connexes