Pre*_*hev 5 javascript underscore.js
我希望能够使用下划线的extend功能并实现一个特定的案例.默认情况下,extend使用源的成员覆盖目标的任何现有成员.我的问题是我想保持目的地和源的初始化方法完好无损,所以我做的大致是:
addComponent: function(comp, init) {
var iF;
if (comp.initialize) {
iF = comp.initialize;
delete comp["initialize"];
}
_.extend(this,comp);
if (iF) {
comp.initialize = iF;
comp.initialize.call(this,init);
}
return this;
}
Run Code Online (Sandbox Code Playgroud)
这是正确的方法吗 - 通过分离和重新连接?我的意思是,我想保持下划线完整,我不想用任何方法扩展它,因为这是一个非常具体的情况.你发现任何潜力吗?
biz*_*lop 17
只是一个简单的想法,_.extend可以接受多个来源:
_.extend( this, comp, { initialize:this.initialize });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10718 次 |
| 最近记录: |