Résultat d'une méthode. Affectation ou modification ?
Bonjour,
Je souhaiterais, dans une méthode, connaitre si le client attend une affectation du résultat ou une modification de conteneur.
Exemple :
Code:
1 2 3 4 5 6 7 8
| var foo = "test";
var FOO = foo.toUpperCase();
// foo => "test", FOO => "TEST"
Ici, foo n'a pas été modifié. Il y a affectation de FOO.
foo.toUpperCase();
// foo = "TEST" |
Ici, foo est modifié. Il n'y a pas d'affectation.
Comment savoir si this doit être modifié ou pas ?
Comment String.toUpperCase() détermine ceci ?
Une ruse du style :
Code:
eval("check; var checked=false; function check() { checked=true; return "+value+"}; if(!checked){"+_this_+"="+value+"}")
Pas sur que ça marche, mais c'est l'esprit
Une idée, une info ?