Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何编写可在Node.JS应用程序中全局使用的扩展方法?_Node.js - Fatal编程技术网

如何编写可在Node.JS应用程序中全局使用的扩展方法?

如何编写可在Node.JS应用程序中全局使用的扩展方法?,node.js,Node.js,以“StartsWith”扩展为例: if (typeof String.prototype.startsWith != 'function') { String.prototype.startsWith = function (str) { return this.slice(0, str.length) == str; }; } 如果我正在编写一个web应用程序,我会将该代码粘贴到一个ExtensionMethods.js页面中,该页面是我在网站内的网页上导

以“StartsWith”扩展为例:

if (typeof String.prototype.startsWith != 'function') {
    String.prototype.startsWith = function (str) {
        return this.slice(0, str.length) == str;
    };
}
如果我正在编写一个web应用程序,我会将该代码粘贴到一个
ExtensionMethods.js
页面中,该页面是我在网站内的网页上导入的

但是,如果在带有Node.js的服务器上使用它,情况会怎样呢


谢谢

由于
String
是全局可用的,因此可以将其放置在任何需要的文件中。当需要一个文件时,它就会被执行


你甚至不需要导出任何东西。

太好了!因此,我想,
数组
对象
等也是如此。@MatthewPatrickCashatt另外,请看一些您不想扩展本机对象的原因。考虑一下,如果你的代码和一些模块以不同的方式(比如不同的功能)来扩展字符串γ星,会发生什么。@ JimSchubert——好的,读完这篇文章后,我当然会明白你的观点。然而,由于扩展方法非常方便,我仍然希望负责任地使用它们——特别是因为它将在我自己的隔离服务器上运行。那么——我认为只要我以一种不太可能被复制的方式命名扩展方法,那么我就应该可以了,这是正确的吗?例如:
.StudyBritches\u startsWith()