[英]extending Object.prototype.myNewMethod over all my Node application
我刚开始在NodeJs工作,所以我不知道这是否是一个好习惯,对不起:(
我有我的对象实现,该实现将合并方法添加到我创建的所有对象中,这样我就可以合并到一个不同的对象中。
Object.prototype.merge = function(source){
//...my code here
return this;
}
所以我想知道如何将其提供给Node应用程序中的所有模块使用?
我读过这本出色的书 ,我可以为此创建一个模块 ,然后调用utils.merge(obj1, obj2)
。
但是即使如此,我还是愿意继续使用对象的实现,而只需调用obj1.merge(obj2)
有什么办法可以做到这一点?
提前致谢
只需将您的实现放入一个文件中,并在应用程序主.js
文件中的其他任何文件之前要求它。
objectmerge.js
;
Object.prototype.merge = function(){/ body /};
main.js
:
require('objectmerge.js'); //继续执行您的代码
这样,您的objectmerge.js
脚本将首先运行并先修改全局Object
。 但是,我建议您不foo.merge(bar)
,因为这是不常见的做法(并且它允许您在尚未显式定义Object.prototype.merge
的文件中使用foo.merge(bar)
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.