我有以下情況。我正在定義一個新類C
並將其導出爲node
模塊。我想知道使用普通函數(method 1
)與使用原型方法(method 2
)之間的區別。使用原型方法與普通函數的區別
似乎沒有全局命名空間污染問題(因爲它是一個模塊內)與method 1
的幫手,但實際上method 2
通過原型繼承暴露了一些內部的東西(這裏的helper
方法)到外部。
任何其他差異(性能等)?我應該正常使用哪一個?
C.prototype.func=function(){
// need to call helper, use either
// helper();
// or
// this.helper();
}
function helper(){// method 1
}
C.prototype.helper=function(){// method 2
}
module.exports = C;
僅供參考,你不原型喜歡你的表現定義功能。這將是'C.prototype.helper = function(){...}' – jfriend00 2014-12-19 06:29:49