没有调用NodeJS函数

时间:2015-05-21 12:40:05

标签: javascript node.js function

我正在调用一个函数来从字符串数组(x)构建一个特殊格式的字符串(x2)。

代码:

http.createServer(function handler(req, res) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    ...
    function test(x){
        var x2="";
        x2.concat(x);
        return x2;
    }
    ...
    var x = "abcd";
    console.log(test(x));
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');

结果是函数没有被调用。我试过在里面放一个console.log("...")但它也没有显示。项目中的其他任何工作都可以。

我是JS / NodeJS的新手,所以它可能是一些微不足道的东西。

2 个答案:

答案 0 :(得分:1)

您可能正在寻找的是返回concat的结果,因为concat不会影响任一String,而是返回一个新的String。

return x2.concat(x);

有关concat

的信息,请参阅此link

另外,我会看一下该链接的“性能”部分。它说:

  

强烈建议使用赋值运算符(+,+ =)代替concat()方法。

答案 1 :(得分:0)

根据您的问题,我不确定您是否收到错误或者究竟发生了什么。从查看你的代码看起来它应该工作正常,但我猜你的请求永远不会完成。尝试添加

res.end('okay');

到你的处理函数。这将关闭请求并将'okay'发送回'text / html'。