2013-03-08 36 views
1

就拿這個「StartsWith」擴展名:如何編寫可在我的Node.JS應用程序中全局使用的擴展方法?

if (typeof String.prototype.startsWith != 'function') { 
    String.prototype.startsWith = function (str) { 
     return this.slice(0, str.length) == str; 
    }; 
} 

如果我正在寫一個web應用程序,我會堅持的代碼在ExtensionMethods.js頁,我在網頁上輸入我的網站內。

但是如何在使用Node.js的服務器上使用這種情況呢?

謝謝!

回答

2

由於String是全球可用的,它可以放置在任何需要的文件中。當文件被需要時,它會被執行。

你甚至不需要導出任何東西。

+0

不錯!所以我猜這也適用於'Array','Object'等等嗎? – 2013-03-08 02:57:40

+0

這是正確的。 – 2013-03-08 03:02:15

+1

@MatthewPatrickCashatt此外,請參閱[這個問題](http://stackoverflow.com/questions/14034180/why-is-extending-native-objects-a-bad-practice)出於某些原因,爲什麼你可能不想延長本地對象。考慮一下如果你的代碼和某個模塊以不同的方式擴展String#startsWith(例如不同的功能)會發生什麼。 – 2013-03-08 03:12:31

相關問題