Bizarrerie test comparaison
Après avoir passé plus de 10 minutes à chercher un bug dans mon code, j'ai trouvé pourquoi j'ai mis tant de temps à le trouver :
Code:
1 2 3 4
| function ajout_bouton(){
[...]
(ajout_bouton.caller == H.HeroFrame.prototype.show); // false
(H.HeroFrame.prototype.show == ajout_bouton.caller); // true |
comment se fait-il qu'en comparant 2 fonctions (j'ai testé dans des conditions où l'égalité devrait être VRAIE) ça donne vrai dans un cas et faux en intervertissant les membres de gauche et de droite ?
nb: le bug se produit sous FF3.6 (et p-ê d'autres navigateurs/versions)
edit:
J'aurai du mal à vous donner tout le code car il est lié à un jeu par navigateur qui fait près de 100k lignes de codes mais toutes les pistes ou liens de sujets similaires sont les bienvenues, merci d'avance.