Nœud js retour de fonction au lieu d'une valeur de chaîne

Je suis silencieux nouveau sur java script et node js, j'essaie d'obtenir une valeur à partir d'une base de données MySQL, et la valeur de retour est [object Object] au lieu d'une chaîne. Je n'ai vraiment pas trouvé de réponse en ligne quel est le problème. J'espère que quelqu'un pourrait aider. La valeur de ligne est [object Object].

Voici ma fonction

exports.getAllIdInfo= function(dbConnection, tables ,id , callback){ var tableName= tables[i]; var tableVariable = tableName; var myQuery = 'SELECT time, ' + tableVariable + ' FROM ' + tableName + ' WHERE id= ' + id; var query = dbConnection.query(myQuery, function (err, row, result) { console.log(query.sql); if (err) { console.log("getAllGoodIds error"); console.error(err); return; } console.log("row is: " + row); callback(row); }); }; 

[Object Object] se produit dans le journal lorsqu'il existe un objet avec des clés et des valeurs. Vous pouvez accéder aux propriétés dans un objet wth notation par points (.) Ex.

 objectName.propertyName 

Si properyName est un autre objet, il renverra encore [object Object] et il faut donc chercher une autre propriété dans ce domaine. Les propriétés peuvent également contenir des méthodes (fonctions). Si vous souhaitez obtenir la version de chaîne d'un objet afin de les comparer par exemple, utilisez

 JSON.stringify(objectName); 

J'ai également rencontré ce problème, en exécutant le code suivant dans un terminal node.js en conjonction avec "watchman-make" (watchman-make: voir les commentaires dans la première réponse à https://www.quora.com/What-IDEs-are -available-for-node-js-development-on-Linux ).

Le code suivant (avec la sortie node.js affiché) illustre les points créés dans la réponse / les commentaires acceptés:

 function arrayToList(array) { var list = {}; for (var i = array.length - 1; i >= 0; i--) { list = {value: array[i], rest: list}; } return list; }; console.log(arrayToList( [1, 2, 3, 4, 5] )); // { value: 1, // rest: { value: 2, rest: { value: 3, rest: [Object] } } } // '[Object]' ? // http://stackoverflow.com/questions/34264800/node-js-function-return-object-object-instead-of-a-string-value var obj = arrayToList([1, 2, 3, 4, 5]); console.log('%j', obj); // {"value":1,"rest":{"value":2,"rest":{"value":3,"rest":{"value":4,"rest":{"value":5,"rest":null}}}}} console.log(JSON.stringify(obj)); // {"value":1,"rest":{"value":2,"rest":{"value":3,"rest":{"value":4,"rest":{"value":5,"rest":null}}}}}