2011-08-15 26 views
0

我正在處理一個socket.io + Node.js項目。無法在瀏覽器上顯示我的變量

當我打印一個變量使用console.log,我得到我的變量在控制檯上。 但是,當我將這個變量發送給客戶端時,它似乎在瀏覽器上形成[object Object]。 如何在瀏覽器上看到我的變量?

感謝

+0

關於你如何做的一些代碼將很高興看到。努力與這麼少的信息imo。 –

回答

2

嘗試console.log(JSON.stringify(myVariable));,然後看看它在你的瀏覽器,你會獲得更多的有識之士來發生的事情完全一樣。

0

感謝,的console.log(JSON.stringify(MYVARIABLE));爲我的案件工作。變量顯示爲 {coloumn_that_result_lays:「result」}。當然,我們可以用javascript-substring來克服它,但是有一個直接給出「結果」的函數。

// Require HTTP module (to start server) and Socket.IO 
var io = require('socket.io'), 
http = require('http'); 
io = require('socket.io'); 
// Start the server at port 8080 
var server = http.createServer(function(req, res){ 

    // Send HTML headers and message 
    res.writeHead(200,{ 'Content-Type': 'text/html' }); 
    res.end('<h1>Hello Socket Lover!</h1>'); 
}); 
server.listen(8080); 

// Create a Socket.IO instance, passing it our server 
var socket = io.listen(server); 

// Add a connect listener 
socket.on('connection', function (client){ 
//mysql 
var mysql = require('db-mysql'); 
new mysql.Database({ 
    hostname: 'localhost', 
    user: 'root', 
    password: '123123', 
    database: 'node' 
}).connect(function(error) { 
    if (error) { 
     return console.log('CONNECTION error: ' + error); 
    } 
    this.query('SELECT data FROM exam where id=2 '). 
     execute(function(error,result) { 
       if (error) { 
         console.log('ERROR: ' + error); 
         return; 
       } 
       client.json.send(JSON.stringify(result)); 


    }); 
}); 

    // Create periodical which ends a message to the client every 5 seconds 
    var interval = setInterval(function() { 
     client.send('This is a message from the server! '); 


    },1000); 

    // Success! Now listen to messages to be received 
    client.on('message',function(event){ 
     console.log('Received message from client!',event); 
    }); 
    client.on('disconnect',function(){ 
     clearInterval(interval); 
     console.log('Server has disconnected'); 
    }); 

}); 
+0

client.json.send(result.coloumn_that_result_lays); – goatslacker