如何在Node.js中获取指定JSON结构的StatusDescription字段值
正确取值方案
前置要求
首先你需要保证已经将JSON字符串通过JSON.parse()方法转换为JavaScript对象,直接对原始JSON字符串取值必然会得到undefined结果。示例转换代码如下:
// 示例:假设jsonStr是你拿到的原始JSON字符串 const res = JSON.parse(jsonStr)
具体取值方法
1. 获取trackinfo中所有StatusDescription值
// 先定位到trackinfo数组 const trackinfoArr = res.data.items[0].origin_info.trackinfo // 遍历提取所有StatusDescription const statusList = trackinfoArr.map(item => item.StatusDescription) console.log(statusList) // 输出结果:['what i need', 'what i need']
2. 获取trackinfo中指定下标的单个StatusDescription值
// 示例:取第一个trackinfo的StatusDescription const firstStatus = res.data.items[0].origin_info.trackinfo[0].StatusDescription console.log(firstStatus) // 输出结果:what i need
异常兼容写法
如果你的业务场景中items、trackinfo数组可能为空,或者中间字段可能缺失,建议使用可选链语法做兼容,避免代码抛出错误:
// Node.js 14及以上版本支持可选链写法 const safeStatus = res?.data?.items?.[0]?.origin_info?.trackinfo?.[0]?.StatusDescription console.log(safeStatus)
内容的提问来源于stack exchange,提问作者JackForez
相关产品推荐
相关产品推荐

