【第二胖】(1)EXT.JS文件解析--对象属性的添加和设置

/**    
 * 分析CORE---Ext.js 
 */     
     
/**    
 * 第一部分:对象属性的添加和设置    
 */     
Person = {      
    sex : 'woman'// 初始属性设置      
};      
     
Person.applay = function(source, copy, defaults) {      
    if (defaults) {      
        Person.applay(source, defaults)      
    }      
    if (source && copy && typeof copy == 'object') {      
        for (var p in copy) {      
            // alert(p);      
            // p是属性名,通过source[p] = copy[p];
           //对source进行属性的添加和设置。      
       // 如果copy中的属性列表包含有defaults的属性,则source中采用的是copy中的属性和对应的值。      
            source[p] = copy[p];      
        }      
    }      
    return source;      
};      
     
/**    
 * 一、传递的是{}配置列表时    
 */     
// 1、不传defaults的情况      
Person.applay(Person, {      
    name : 'wujinli',      
    age : 26      
});      
// alert(Person.name);// 输出属性名为name的属性值,输出结果:wujinli,也可以用 alert(Person["name"])      
     
// 2、传defaults并且第二个参数的属性列表中不包含第三个参数的属性的情况      
Person.applay(Person, {      
    age : 26      
}, {      
    name : 'wujinli'     
});      
// alert(Person.name);// 输出属性名为name的属性值,输出结果:wujinli,也可以用 alert(Person["name"])      
     
// 3、传defaults并且第二个参数的属性列表中有包含第三个参数的属性的情况      
Person.applay(Person, {      
    name : '丫梨',      
    age : 26      
}, {      
    name : 'wujinli'     
});      
// alert(Person.name);// 输出属性名为name的属性值,输出结果:丫梨,也可以用 alert(Person["name"])      
     
/**    
 * 二、传递的是对象时    
 */     
Child = function() {      
    this.farther = "farther-name";      
    this.mother = "mother-name";      
};      
Person.applay(Person, new Child());      
// alert(Person.farther);
// 输出属性名为farther的属性值,输出结果:farther-name    

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值