Javascript 使用js在节点中调用private
我在一个节点应用程序中使用以下代码,当我调用_valdations函数时出错,我希望_vali是“私有”的,比如(我知道JS本机不支持这一点,推荐的方法是什么?vali函数不应该暴露在外部(只用于内部…)Javascript 使用js在节点中调用private,javascript,node.js,Javascript,Node.js,我在一个节点应用程序中使用以下代码,当我调用_valdations函数时出错,我希望_vali是“私有”的,比如(我知道JS本机不支持这一点,推荐的方法是什么?vali函数不应该暴露在外部(只用于内部…) 不要导出它,只是将其用作局部变量 function fileAction(etc) { } function vali(etc) { } module.exports = { fileAction: fileAction // vali: vali // Not exp
不要导出它,只是将其用作局部变量
function fileAction(etc) {
}
function vali(etc) {
}
module.exports = {
fileAction: fileAction
// vali: vali // Not exported
};
只是不要将其添加到
模块。导出:
var _vali = function (config, req, res) {
// do some validations
}
module.exports = {
fileAction: function (req, res, urlPath) {
_vali(config, req, res);
}
};
感谢Quentin的投票!似乎有两个(和其他答案一样)选项可以做到这一点(每种用法都有利弊?命名函数更容易在调试器中处理(因为它们会在堆栈跟踪中告诉您函数名)。谢谢,只是为了验证这是唯一的区别?这是本例中唯一重要的区别。谢谢康斯坦丁尼乌斯的投票!似乎有两个(和其他答案一样)选项可以做到这一点(每种用法都有利弊?或者这只是语义上的区别
var _vali = function (config, req, res) {
// do some validations
}
module.exports = {
fileAction: function (req, res, urlPath) {
_vali(config, req, res);
}
};