我有一个简单的“扩展”的方法建立这样的多个版本:的Javascript,简单的扩展方法,允许延长对象
extend: function(source) {
for (var k in source) {
if (source.hasOwnProperty(k)) {
myThing[k] = source[k];
}
}
return myThing;
}
您可以使用它像
myThing.extend({
newObj: {
myFunc: function() { console.log('things'); }
}
});
和它的伟大工程。
不过,我很想加入到有一些其他部分的代码调用稍后的能力:
myThing.extend({
newObj: {
mySecondFunc: function() { console.log('things'); }
}
});
,我应该能够调用都myThing.newObj.myFunc()
和myThing.newObj.mySecondFunc()
。
我试图将其更改为这样:
for (var k in source) {
if (source.hasOwnProperty(k)) {
if (mtUtils.hasOwnProperty(k)) {
for (var t in k) {
mtUtils[k][t] = source[k][t];
}
} else {
mtUtils[k] = source[k];
}
}
}
,但似乎并没有工作。
我建议在寻找道格拉斯克罗克福德实施了不同的模式。 http://javascript.crockford.com/ –
@AaronKurtzhals:哪一部分?你只是把我送到整个网站。 –
我建议http://javascript.crockford.com/prototypal.html –