我正在尝试编写一个node.js测试应用程序,该应用程序预先设置" hello"给一个字符串。
我有主文件,然后是测试文件:
helloPrepend.js:
var helloPrepender = (function() {
// your code goes here
function prepend(text){
return "hello" + text;
}
}());
// make prepender available via "require" in Node.js
if (module.exports) {
module.exports = helloPrepender;
}
我不确定我是如何解决这个错误的,但在内部函数内定义prepend函数感觉错误" var helloPrepender"
但似乎helloPrependTester没有正确访问helloPrepend的功能。
答案 0 :(得分:0)
不是答案,而是两个快速笔记,
在
var helloPrepender = (function() {
// your code goes here
function prepend(text){
return "hello" + text;
}
}());
// make prepender available via "require" in Node.js
if (module.exports) {
module.exports = helloPrepender
}
helloPrepender
未返回此功能。
你应该写
var helloPrepender = (function() {
// your code goes here
return function prepend(text){
return "hello" + text;
}
}());
// make prepender available via "require" in Node.js
if (module.exports) {
module.exports = helloPrepender
}
然后一般来说,这可以简化为
function prepend(text){
return "hello" + text;
}
module.exports = prepend
甚至,
module.exports = function (text){
return "hello" + text;
}