zoukankan      html  css  js  c++  java
  • Extjs/js两个对象的属性进行混合

    /*
         * @param {Object} target 目标对象。 @param {Object} source 源对象。 @param {boolean}
         * deep 是否复制(继承)对象中的对象。 @returns {Object} 返回继承了source对象属性的新对象。
         */
        Mixing2Object : function ( target , source ,deep ){
            target = target || {};
            var sType = typeof source , i = 1 , options;
            if ( sType === 'undefined' || sType === 'boolean' ){
                deep = sType === 'boolean' ? source : false;
                source = target;
                target = this;
            }
            if ( typeof source !== 'object'
                && Object.prototype.toString.call( source ) !== '[object Function]' )
                source = {};
            while ( i <= 2 ){
                options = i === 1 ? target : source;
                if ( options != null ){
                    forvar name in options){
                        var src = target [name] , copy = options [name];
                        if ( target === copy )
                            continue;
                        if ( deep && copy && typeof copy === 'object' && !copy.nodeType )
                            target [name] =
                                this.extend( src || (copy.length != null ? [] : {}) , copy ,
                                  deep );
                        else if ( copy !== undefined )
                            target [name] = copy;
                    }
                }
                i++;
            }
            return target;
        }



  • 相关阅读:
    好好的Timer居然有坑?
    你竟然用Integer作为synchronized的锁对象?
    是时候了解Java Socket底层实现了
    带你了解MyBatis一二级缓存
    Java利用反射排序
    用代码移动桌面图标(贪吃蛇)
    servlet上传文件+上传进度显示
    简书导航栏实现
    iPhone手机屏幕尺寸(分辨率)
    iOS深拷贝浅拷贝
  • 原文地址:https://www.cnblogs.com/babyhhcsy/p/3434640.html
Copyright © 2011-2022 走看看