11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à vous,

Je souhaite définir un prototype commun a tous les types de variables du navigateur.

Je ne sais pas si cela est réalisable, mais après plusieurs recherches sur internet je ne trouve rien a ce sujet.

Je développe un peu mon problème pour ceux qui on le courage de lire.

Je peux donc ajouter des prototypes de fonction a mon objet String en faisant quelques chose qui ressemble a cela : String.prototype.MaFonctionquiVaBien = function(){...}
Ça a priori je sais faire. Seulement si ma variable n'est pas de type String mon prototype ne sert strictement a rien.

Il faudrait alors que je déclare le même prototype pour les différents type de variables Javascript (Number, Function, Date, Array, Object, etc...) Mais je trouve pas ca particulièrement propre, n'y a t il pas un moyen plus efficace?

Je me suis amusé dans ma console Firebug a faire une typeof de tous les types que je connaissais et leurs types est toujours Function. Je me dis alors qu'il y a un bien un tronc commun et peut être, il existe une bonne pratique a la clé...

Merci de votre aide.

Benoît
Modifié par beenwa (10 Nov 2010 - 14:05)
Object.prototype.foo = function(){ alert("bar"); };
"".foo();
[].foo();
({}).foo();
(function(){}).foo();
(3).foo();
NaN.foo();
Infinity.foo();
document.foo();
document.body.foo();
true.foo();
false.foo();
/^regexp$/.foo();


Mais c'est très déconseillé d'étendre des objets qui ne nous appartiennent pas.
Modifié par MonsieurY (10 Nov 2010 - 13:45)