[jQuery] Problem with extend() when source object contains functions
Run this code :
var empty = {};
var defaults = { validate: false, limit: 5, name: "foo", buttons :
{}};
var options = { validate: true, name: "bar"};
var settings = $.extend(empty, defaults, options);
settings.buttons['Ok'] =
function()
{
alert( "TEST");
};
After running this settings.buttons contains ["Ok"] as expected BUT so
does defaults.buttons.
I only set settings.buttons["Ok']. Somehow extend() causes this
behaviour can anyone explain why?