2013-04-27 497 views
0

我尝试学习node.js并尝试创建新的TCP服务器连接。代码JavaScript回调函数对象

var server = require('net').createServer(function(socket) { 
    console.log('new connection'); 

    socket.setEncoding('utf8'); 

    socket.write("Hello! You can start typing. Type 'quit' to exit.\n"); 

    socket.on('data', function(data) { 
    console.log('got:', data.toString()); 
    if (data.trim().toLowerCase() === 'quit') { 
     socket.write('Bye bye!'); 
     return socket.end(); 
    } 
    socket.write(data); 
    }); 

    socket.on('end', function() { 
    console.log('Client connection ended'); 
    }); 

}).listen(4001); 

看看回调函数,之后他们调用listen方法。这是什么样的对象。

+2

你能不能再提出你的问题吗?目前的措辞有点难以理解。 – ASGM 2013-04-27 14:24:07

回答

1

什么它基本上说的是:

function myHandler(socket) { 
    // everything up to socket.on('end') 
} 

var server = require('net').createServer(myHandler); 
server.listen(4001); 

所以它只是创建与处理函数的套接字服务器,然后让服务器监听端口4001

+0

方法listen()是来自服务器对象的函数。我懂了。非常感谢 – 2013-04-27 14:40:17