- // Recurse if we're merging object values
- if ( deep && copy && typeof copy === "object" && !copy.nodeType ) {
- var clone;
-
- if ( src ) {
- clone = src;
- } else if ( jQuery.isArray(copy) ) {
- clone = [];
- } else if ( jQuery.isObjectLiteral(copy) ) {
- clone = {};
- } else {
- clone = copy;
- }
+ // Recurse if we're merging object literal values
+ if ( deep && copy && jQuery.isObjectLiteral(copy) ) {
+ // Don't extend not object literals
+ var clone = src && jQuery.isObjectLiteral(src) ? src : {};