0
在我的節點JS服務器我有我的模塊文件。我的模塊文件連接到一個數據庫,並拉出一個行列表。我正在導出一個返回對象數組的函數。基本上我會反饋我從數據庫中獲得的信息,並將它傳回給我的主腳本來處理它。Javascript - 從專家返回的對象數組給予未定義 - NodeJS
所以這是我的模塊腳本看起來像
- mymodule.js -
function smsdcontact(fname, lname, smsdcell, smsdemail) {
this.fname = fname;
this.lname = lname;
this.smsdcell = smsdcell;
this.smsdemail = smsdemail;
}
var smsdgetlist = function (smsdgroupid) {
var smsdlist = [];
connection.connect();
connection.query('SELECT * from mymembers', function(err, rows, fields) {
if (!err) {
console.log('The number of rows found are: ', rows.length);
for (i = 0; i < rows.length; i++) {
smsdlist.push (new smsdcontact(rows[i].memfname,rows[i].memlname,rows[i].memcell,rows[i].mememail));
}
connection.end();
console.log(smsdlist);
return smsdlist;
}
else
console.log('Error while performing Query.'+err);
});
}
exports.smsdgetlist = smsdgetlist;'
我的主要腳本將看起來像
- main.js -
var test = require("./smsdsql.js");
var returnedarray = test.smsdgetlist("0");
console.log(returnedarray)
輸出看起來像
- 輸出 -
C:\node main.js
undefined
The number of rows found are: 2
[ smsdcontact {
fname: ‘user 1 first name',
lname: ‘use 1 last name',
smsdcell: ‘user 1 cell phone',
smsdemail: ‘user 1 email },
smsdcontact {
fname: 'user 2 first name'',
lname: 'user 2 last name',
smsdcell: 'user 2 cell phone',
smsdemail: ‘user 2 email' } ]
所以,問題是,這聽起來是回報是不確定的
您的輸出有一個有趣的引號組合。有單引號,雙引號,印刷引用......絕對沒有辦法從一個顯示實際輸出的實際窗口中複製出來。 – Tomalak
對不起@m_callens有額外的引號作爲拼寫錯誤,因爲我試圖屏蔽真實數據 – Joe
通過更改* data *而不是通過更改輸出來掩蓋實際數據。 – Tomalak