Node.js 中如何从嵌套响应对象提取 token 值并存入独立变量
Node.js 环境下从指定嵌套对象提取token字段
你拿到的原始响应对象中,顶级属性名包含特殊字符冒号(Name:Test),无法直接通过常规点语法取值,在Node.js环境下可通过以下两种标准JS方式完成提取,所有现行Node.js长期支持版本均可直接运行,无需额外依赖。
前置数据定义
先将获取到的响应数据存入基础变量,示例结构和你描述的完全一致:
// 替换为你实际拿到的响应内容即可 const responseData = { 'Name:Test': { token: 738561, number: 2021.8 } };
提取方式1:嵌套方括号逐层取值
因为属性名包含冒号这类特殊字符,必须用方括号语法包裹属性名逐层访问,逻辑直观、无任何版本兼容问题:
// 提取token并存入自定义变量customToken const customToken = responseData['Name:Test']['token']; // 可运行打印验证结果为 738561 console.log(customToken);
提取方式2:嵌套解构赋值
如果后续需要批量提取同一层级的多个字段,可通过ES6解构语法一步完成取值,代码更简洁:
// 直接将token值绑定到自定义变量customToken const { 'Name:Test': { token: customToken } } = responseData; // 可运行打印验证结果为 738561 console.log(customToken);
常见避坑点
不要对带特殊字符的顶级属性使用点语法,例如编写responseData.Name:Test.token会直接触发语法报错——JS解析器会将该位置的冒号识别为标签语法,而非对象属性的取值逻辑。
内容的提问来源于stack exchange,提问作者Devender Jangra
相关产品推荐
相关产品推荐

