无法从JSON获取值

3

我在从JSON对象中获取特定值方面遇到了麻烦。

我的程序查询WolframAlpha并使用以下代码返回一个名为“result”的对象:

var wolfram = require('wolfram').createClient("[CENSORED]")

wolfram.query("integrate 2x", function(err, result) {
  if(err) throw err
  console.log("Result: %j", result)
})

它会返回以下 JSON:
[
  {
    "subpods": 
      [{
      "title":"",
      "value":" integral 2 x dx = x^2+constant",
      "image":"http://www5a.wolframalpha.com/Calculate/MSP/MSP36002050fgg595dgib5a000031a456025754352g?MSPStoreType=image/gif&s=59"
      }],
    "primary":true
  },
  {
      "subpods": [{
      "title":"",
      "value":"",
      "image":"http://www5a.wolframalpha.com/Calculate/MSP/MSP36012050fgg595dgib5a000055e24iecig9cc4ga?MSPStoreType=image/gif&s=59"
    }],
    "primary":false
  }
]

我试图从第一个子表格中获取“value”值。 我尝试过: var newResults = result.subpods [0] .value; 但这给了我一个错误: TypeError: Cannot read property '0' of undefined 我已经尝试了至少一个小时的不同组合。 请帮助!
感谢您的时间,
Bobbyg

1
你需要解析JSON将其转换为对象:https://dev59.com/IW025IYBdhLWcg3w6aUX - Jack
2个回答

9

result看起来像是一个数组。

尝试:

var newResults = result[0].subpods[0].value;

4
请尝试以下代码:
var newResults = result[0].subpods[0].value;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接