7

我想在 node.js 应用程序中添加或覆盖一些对象、函数和数组的标准方法(例如,像这个答案中建议的那样)。我应该如何在一个模块中完成所有“补丁”,以便它影响我的所有其他模块?

如果我在一个只是require'd 的模块中执行它就足够了,否则它将无法工作,因为这两个模块具有不同的全局名称空间,因此它们具有不同的对象?...或者我应该在这之后运行一些初始化require函数这些“补丁”也在这个模块中工作吗?

4

2 回答 2

12
//require the util.js file 
require('./util.js');

var a = [];
a.doSomething();

在您的“util.js”文件中:

//in your util.js file you don't have to write a module, just write your code...
Array.prototype.doSomething = function(){console.log("doSomething")};
于 2013-01-15T00:51:24.553 回答
7

加载的每个文件都共享相同的原始对象,如 Object、Array 等,除非在不同的 vm 上下文中运行,因此在初始化时要求文件一次将在任何地方进行更改。

于 2013-01-15T00:33:58.513 回答