Est-ce que quelqu'un peut m'expliquer ce qui suit. J'ai deux fonctions JavaScript définies dans la portée globale comme suit :
var foo = function () {
var that = this;
that.toString = function () { return "foobar" };
return that;
}();
alert(foo.toString());
var foo2 = function (foo) {
var that;
that = $.extend(true, {}, foo);
return that;
}();
Alarmer foo.toString() fonctionne comme je m'y attendais car foo est assigné au résultat de l'invocation de la fonction. Cependant, j'aurais attendu que foo2 ait accès à foo. Pourtant à l'intérieur de foo2, foo est indéfini. Est-ce que quelqu'un peut aider ?
Merci beaucoup, Mike.