我期待在這裏:Levenshtein模塊如何與NodeJS模塊系統交互?
https://github.com/gf3/Levenshtein/blob/master/lib/levenshtein.js
我看到的代碼是這樣開始的:
(function(root, factory){
if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) {
define(function(){
return factory(root);
});
} else if (typeof module == 'object' && module && module.exports) {
module.exports = factory(root);
} else {
root.Levenshtein = factory(root);
}
}(this, function(root){
我從來沒有見過這個。這是什麼意思? 「根」是什麼意思?
如果我添加這對我的應用程序的NodeJS的的package.json文件,那麼我怎麼使用這個內部函數:
// Levenshtein distance
function Levenshtein(str_m, str_n)
所有的例子都使用這個內部函數,但我不知道如何達到它。
[什麼是'typeof define ==='function'&& define \ ['amd'\]'用於?](http://stackoverflow.com/questions/30953589/what-is-typeof -define-function-defineamd-used-for) –
只需像平常一樣使用它。您可能會注意到,如果它檢測到它在node.js中運行(模塊對象存在),它會照常執行'module.exports' – slebetman