我知道即时并不好使用res.render {}对象,并且那是我的原因,在这里发帖,但:在客户端
con.connect();
con.query('SELECT name, lname, rank FROM players LIMIT 1', function(err,rows, fields){
if(err) throw err;
result = rows;
resultstringify = JSON.stringify(rows);
console.log(result);
console.log(resultstringify);
});
con.end();
节点控制台给我:
[{名:'FAKE',lname:'FAKE',等级:1}]
[{“name”:“FAKE”,“lname”:“FAKE”,“rank”:1}]
然后, go for:
router.get('/', function(req, res, next) {
res.render('players',
{ title: "New page", result: result, resultstringify : resultstringify });
});
然后在客户端我做
console.log("{{result}}");
和收到的翻译:
console.log("{{resultstringify}}");
和收到[{"name":"FAKE","lname":"FAKE","rank":1}]
console.log(JSON.parse("{{resultstringify}}"));
和收到 未捕获的SyntaxError:意外令牌&(这是第一个字母[{" ...)
我希望我已经搞砸了所有的解析/ stringify的东西,它很容易修复,但我想发送和正确的方式接收它。目前,我可以收到的最好的事情是
[{"name":"FAKE","lname":"FAKE","rank":1}]
,但它看起来不正确
我做点击这里的所有链接,但仍然不得不张贴此问题。
更新:
更换& QUOT用一个单一的 “帮助:
arr = "{{resultstringify}}"; // call it
arr = arr.replace(/"/g, '"'); //replace " with a single "
arr = JSON.parse(arr); //parse it
console.log(arr[0].name); //gives what you want
,但我仍然无法figuire了哪里& QUOT(而不是”)是从哪里来的。
thanx您的回复是的,{{resultstringify}}看起来正常的内格,而{{结果}}仍然是[对象对象] 但是在JS方面,我如何获取名称,lname,等级的值?json.parse(“{{resultstringify}}”); //返回Uncaught SyntaxError:意外的标记& –