Javascript 节点JSON-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

我试图用节点JS解析一个JSON对象,当我打印响应主体时,我得到的是正确的对象,但当我试图得到object.subsonic-response时,我得到的是NaN。我对谷歌做了很多研究,但我找不到如何让它发挥作用

请帮忙

谢谢

我的代码:

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的答案标记为正确。