Possible en double:
What's the best way to define a class in javascriptComment écrivez-vous une classe en Javascript?
Comment écrire une classe en Javascript? Est-ce même possible?
Possible en double:
What's the best way to define a class in javascriptComment écrivez-vous une classe en Javascript?
Comment écrire une classe en Javascript? Est-ce même possible?
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.
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
function Foo() {
// constructor
}
Foo.prototype.bar = function() {
// bar function within foo
}
Je pense que vous avez une "fonction" supplémentaire au début de 'bar'. :-) –
Ouais. Aussi, n'oubliez pas de mentionner que vous devez utiliser Foo(). – alamar
whoops fixe, je ne suis pas habitué à écrire javascript oo. –
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');
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.
Si vous utilisez une bibliothèque comme prototype ou jQuery, c'est beaucoup plus simple, mais la manière traditionnelle est de le faire.
function MyClass(){
}
MyClass.prototype.aFunction(){
}
var instance = new MyClass();
instance.aFunction();
Vous pouvez en savoir plus sur le sujet ici http://www.komodomedia.com/blog/2008/09/javascript-classes-for-n00bs/
Eh bien, JavaScript est un langage basé sur un prototype, il ne dispose pas de cours, mais vous pouvez avoir l'héritage classique, et d'autres modèles de réutilisation des comportements par clonage d'objet et le prototypage.
Articles recommandés:
Ack. "javascript" a été modifié en "Javascript" plutôt que "JavaScript". – Nosredna
Je préfère jAvAsCrIpt. C'est la bonne façon. –