源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

jQuery extend 的简单实例

  • 时间:2022-10-14 05:54 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:jQuery extend 的简单实例
[u]复制代码[/u] 代码如下:
jQuery.extend = jQuery.fn.extend = function() {     var options, name, src, copy, copyIsArray, clone,         target = arguments[0] || {},         i = 1,         length = arguments.length,         deep = false;     // Handle a deep copy situation     if ( typeof target === "boolean" ) {         deep = target;         target = arguments[1] || {};         // skip the boolean and the target         i = 2;     }     // Handle case when target is a string or something (possible in deep copy)     if ( typeof target !== "object" && !jQuery.isFunction(target) ) {         target = {};     }     // extend jQuery itself if only one argument is passed     if ( length === i ) {         target = this;         --i;     }     for ( ; i < length; i++ ) {         // Only deal with non-null/undefined values         if ( (options = arguments[ i ]) != null ) {             // Extend the base object             for ( name in options ) {                 src = target[ name ];                 copy = options[ name ];                 // Prevent never-ending loop                 if ( target === copy ) {                     continue;                 }                 // Recurse if we're merging plain objects or arrays                 if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {                     if ( copyIsArray ) {                         copyIsArray = false;                         clone = src && jQuery.isArray(src) ? src : [];                     } else {                         clone = src && jQuery.isPlainObject(src) ? src : {};                     }                     // Never move original objects, clone them                     target[ name ] = jQuery.extend( deep, clone, copy );                 // Don't bring in undefined values                 } else if ( copy !== undefined ) {                     target[ name ] = copy;                 }             }         }     }     // Return the modified object     return target; };
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部