Ext中对象初始化时往往通过config来进行参数传递,它是一个JSON对象
例子:
//定义Person类,有name和sex属性,通过构造函数初始化 Person = function(config) { this.name = config.name; this.age = config.age; } //config参数应为JSON格式 var p = new Person({name:"MJ",age:"50"}); alert("姓名:" + p.name + "\r\n性别:" + p.age);
当类的属性过多时,如果一个个进行赋值操作,显得过于繁琐,此时,我们可以通过Ext.apply()方法来自动进行参数的赋值操作。
例子:
//定义Person类,有name和sex属性,通过构造函数初始化 Person = function(config) { Ext.apply(this,config); } //config参数应为JSON格式 var p = new Person({name:"MJ",age:"50"}); alert("姓名:" + p.name + "\r\n性别:" + p.age);
使用Ext.apply(obj,config)方法时,config会将obj中的同名参数值覆盖,并向obj中添加obj没有而config中有的参数。
如果不希望同名值被覆盖。可以使用Ext.applyif(obj,config)方法。