Looks like the new $.extend implementation doesn't let you recursively
extend a function anymore:

// create function w/properties
var T = $.test = function() { alert(T.prop ? 'good' : 'bad'); };
$.extend(T, { prop: false });

// elsewhere, do deep configuration
$.extend(true, $, {
    test: {
        prop: true
    }
});

// uh oh!
console.log($.test);
$.test();

I often use this pattern (func w/props) to reduce conceptual area and
namespace clutter.  I can work around this by directly manipulating
the properties ($.test.prop = true), but that becomes quite unwieldy
given the number of properties and the way i pass config objects
around.

In either case, it seems inconsistent to allow functions to be
extended directly ($.extend($.test, {prop:true})), but not when doing
a deep, recursive extend call.  Was this an intended change or have i
found a bug?
-- 
You received this message because you are subscribed to the Google Groups 
"jQuery Development" group.
To post to this group, send email to jquery-...@googlegroups.com.
To unsubscribe from this group, send email to 
jquery-dev+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/jquery-dev?hl=en.


Reply via email to