X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fcore.js;h=58cbbc7e53ea16a5440b2089740205c0a45c3691;hb=c14fa516ae5525f93af562910d22f0a836ebdde3;hp=975d23c0db659e8d9465a31c557b895068e56c5e;hpb=230614b4df313493813d688b63ab68f3812a0030;p=jquery.git diff --git a/src/core.js b/src/core.js index 975d23c..58cbbc7 100644 --- a/src/core.js +++ b/src/core.js @@ -316,10 +316,10 @@ jQuery.extend = jQuery.fn.extend = function() { continue; } - // Recurse if we're merging object literal values - if ( deep && copy && jQuery.isPlainObject(copy) ) { - // Don't extend not object literals - var clone = src && jQuery.isPlainObject(src) ? src : {}; + // Recurse if we're merging object literal values or arrays + if ( deep && copy && ( jQuery.isPlainObject(copy) || jQuery.isArray(copy) ) ) { + var clone = src && ( jQuery.isPlainObject(src) || jQuery.isArray(src) ) ? src + : jQuery.isArray(copy) ? [] : {}; // Never move original objects, clone them target[ name ] = jQuery.extend( deep, clone, copy );