Ext学习之3_apply与applyIf

Ext.namespace("com.deng.apply");
/**
 * Ext的apply(obj,config)和applyIf(obj,config)的区别:
 * 从字面意思理解applyIf是带条件式的赋值,具体区别:
 * apply方法会将config和obj中同名属性的值赋给而且将obj中没有的config中有的属性添加到obj中
 * applyIf方法不会将obj同名的属性值赋给,但是它也会将obj中没有的属性添加值obj中
 * 举例说明:
 */

/**
Student = function(config){
    this.name = "张山";
    this.sex = "男";
    Ext.apply(this,config);
}

//测试
var stu  = new Student({name:"李四",sex:"女",birthday:new Date()});
alert("姓名:" + stu.name + "\r\n性别:" + stu.sex + "\r\n生日:"
        + stu.birthday);
*/

Student = function(config){
    this.name = "张山3";
    this.sex = "男";
    Ext.applyIf(this,config);
}

var stu = new Student({name:"李四",sex:"女",birthday: new Date()});
alert("姓名:" + stu.name + "\r\n性别:" + stu.sex + "\r\n生日:"
        + stu.birthday);

你可能感兴趣的:(ext)