所以我有这个休息调用,它返回这个样本数据。
var test = {
"id": "testtset",
"name": "sf-rg",
"tags": {
"Tag Set": "005",
"User Name": "Bond"
},
"properties": {
"provisioningState": "Succeeded"
}
},
{
"id": "365tset",
"name": "Test365",
"location": "us",
"properties": {
"provisioningState": "Succeeded"
}
}
console.log(test.tags["User Name"]);
如果我运行它会给我一个错误。
我的对象包含用户名的值,但不包含所有ID的值。
假设我只有一个json对象console.log(test.tags["User Name"]);
,这样可以正常工作,但不适用于多个数据对象。
有人知道如何解决此问题吗?
答案 0 :(得分:1)
这样做。
var test =[
{
"id": "testtset",
"name": "sf-rg",
"tags": {
"Tag Set": "005",
"User Name": "Bond"
},
"properties": {
"provisioningState": "Succeeded"
}
},
{
"id": "365tset",
"name": "Test365",
"location": "us",
"properties": {
"provisioningState": "Succeeded"
}
}]
console.log(test[0].tags["User Name"]);
答案 1 :(得分:1)
对变量应该是什么样的修改很少......如果你想获得第一个标签的用户名:
var test = [{
"id": "testtset",
"name": "sf-rg",
"tags": {
"Tag Set": "005",
"User Name": "Bond"
},
"properties": {
"provisioningState": "Succeeded"
}
},
{
"id": "365tset",
"name": "Test365",
"location": "us",
"properties": {
"provisioningState": "Succeeded"
}
}
];
console.log(test[0]["tags"]["User Name"]);

答案 2 :(得分:1)
你的问题不在于密钥名称中的空格,我假设你已经写了一个错误粘贴你的json,而你实际上是在回一个阵列:
var test =
[
{
"id": "testtset",
"name": "sf-rg",
"tags": {
"Tag Set": "005",
"User Name": "Bond"
},
"properties": {
"provisioningState": "Succeeded"
}
},
{
"id": "365tset",
"name": "Test365",
"location": "us",
"properties": {
"provisioningState": "Succeeded"
}
}
]
上面的json:
console.log(test[0].tags["User Name"]);
应该没问题
但
console.log(test[1].tags["User Name"]);
不会,因为第二个对象没有tags
属性