use*_*467 115 javascript json
当字符串有短划线字符时,我无法从json对象检索值:
{
"profile-id":1234, "user_id":6789
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试引用解析jsonObj.profile-id它返回ReferenceError: "id" is not defined但jsonObj.user_id将返回6789
我没有办法修改外部api调用返回的值,并尝试解析返回的字符串以删除破折号,也会破坏传递的URL等.救命?
SLa*_*aks 256
jsonObj.profile-id是减法表达式(即jsonObj.profile - id).
要访问包含无法在标识符中出现的字符的密钥,请使用括号:
jsonObj["profile-id"]
Run Code Online (Sandbox Code Playgroud)
小智 6
除了这个答案之外,请注意,在 Node.js 中,如果使用数组语法访问 JSON,[]则所有嵌套 JSON 键都应遵循该语法
这是错误的方法
json.first.second.third['comment']
Run Code Online (Sandbox Code Playgroud)
并会给你“未定义”错误。
这是正确的方法
json['first']['second']['third']['comment']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
74591 次 |
| 最近记录: |