如何parsing节点js中的JSON数组
我正在尝试下面的代码,身体是来自HTTP GET
响应。 当我试图运行它,我得到以下错误。
无法读取未定义的属性“
po_number
”
{ "d": { "results": [ { "po_number": "PO1001", "product_id": "PD1001", "message": "Exists", "timestamp": "2016-05-01" } ] } }
如何访问po_number
var profile = JSON.parse(body); console.log("profile: "+ profile.results.po_number);
当我访问上面的代码时,我得到undefined
你错过了一步。 你错过了对象d
, results
是一个数组。 所以首先访问0
索引项目。
您需要通过profile.d.results[0].po_number
。
const jsonObj = `{ "d": { "results": [ { "po_number": "PO1001", "product_id": "PD1001", "message": "Exists", "timestamp": "2016-05-01" }] }}`; var profile = JSON.parse(jsonObj); console.log(profile.d.results[0].po_number);
结果是一个数组。
要访问po_number,您需要执行以下操作:
console.log("profile: "+ profile.results[0].po_number)
确保你dynamic地迭代数组来访问这个值。
示例(在下划线/ lodash中):
_.each(profile.results, (result) => { console.log("profile: " + result.po_number); });
var profile = JSON.parse(JSON.stringify(data[0])) console.log("profile: "+ profile.po_number)