Javascript 节点JSON-NaN
我试图用节点JS解析一个JSON对象,当我打印响应主体时,我得到的是正确的对象,但当我试图得到object.subsonic-response时,我得到的是NaN。我对谷歌做了很多研究,但我找不到如何让它发挥作用 请帮忙 谢谢 我的代码:Javascript 节点JSON-NaN,javascript,json,node.js,Javascript,Json,Node.js,我试图用节点JS解析一个JSON对象,当我打印响应主体时,我得到的是正确的对象,但当我试图得到object.subsonic-response时,我得到的是NaN。我对谷歌做了很多研究,但我找不到如何让它发挥作用 请帮忙 谢谢 我的代码: var request = require('request'); var options = { url : host + view + logginParameters + actionParameters, headers: { 'Use
var request = require('request');
var options = {
url : host + view + logginParameters + actionParameters,
headers: {
'User-Agent': 'request'
}
};
function callback(error, response, body) {
if (!error && response.statusCode == 200) {
var object = JSON.parse(body);
console.log(object.subsonic-response);
}
}
request(options, callback);
以下是JSON对象:
{ 'subsonic-response':
{ status: 'ok',
version: '1.15.0',
playlist:
{ id: '39',
name: 'Smoothie !',
comment: '',
owner: 'william',
public: true,
songCount: 24,
duration: 5392,
created: '2015-11-19T17:08:02.874Z',
changed: '2016-03-27T04:10:19.753Z',
coverArt: 'pl-39',
entry: [Object]
}
}
}
代码由节点解析,如下所示
(object.subsonic)-response
,即NaN
。您需要的是object['subsonic-response']
节点正在解析代码,如(object.subsonic)-response
,即NaN
。您需要的是对象['subsonic-response']您不能在成员名称中使用连字符,请将其更改为对象['subsonic-response']Omg!我还有很多东西要学!非常感谢,它正在工作!:)没问题。祝你好运对于将来遇到此问题的任何人来说,也许值得将@Michael Ratliff的答案标记为正确。您不能在成员名称中使用连字符,请将其更改为object['subsonic-response']Omg!我还有很多东西要学!非常感谢,它正在工作!:)没问题。祝你好运对于将来遇到这个问题的人来说,也许值得将@Michael Ratliff的答案标记为正确。