Javascript 解析属性键中带有特殊字符的JSON对象

Javascript 解析属性键中带有特殊字符的JSON对象,javascript,json,Javascript,Json,我有一个JSON文件,看起来像这样 { "samlp:Response": { "@attributes": { "xmlns:samlp": "urn:oasis:names:tc:SAML:2.0:protocol", "ID": "_482d7b9c-3e50-47cb-aa64-4e3655352c64", "Version": "2.0", "IssueInstant

我有一个JSON文件,看起来像这样

{
    "samlp:Response": {
        "@attributes": {
            "xmlns:samlp": "urn:oasis:names:tc:SAML:2.0:protocol",
            "ID": "_482d7b9c-3e50-47cb-aa64-4e3655352c64",
            "Version": "2.0",
            "IssueInstant": "2019-06-27T17:02:47.711Z",
            "Destination": "https://jjds-sunrise--cqsupport--c.cs102.visual.force.com/apex/ResponseReceiver",
            "InResponseTo": "Azure_9849028456"
        }
    }
}
在尝试使用正常方式解析此JSON时

jsonObject.samlp:Response.@attributes.ID
其中jsonObject是我为此JSON创建的对象。我得到一个错误,上面写着

“意外令牌:”

。我是做错了还是有其他方法来解析这个问题?

看一看。考虑以下事项:

const jsonObject={
“samlp:响应”:{
“@attributes”:{
“xmlns:samlp”:“urn:oasis:names:tc:SAML:2.0:protocol”,
“ID”:“U 482d7b9c-3e50-47cb-aa64-4e3655352c64”,
“版本”:“2.0”,
“发行人”:“2019-06-27T17:02:47.711Z”,
“目的地”:https://jjds-sunrise--cqsupport--c.cs102.visual.force.com/apex/ResponseReceiver",
“回复:”Azure9849028456“
}
}
};
log(jsonObject[“samlp:Response”][“@attributes”].ID)看一看。考虑以下事项:

const jsonObject={
“samlp:响应”:{
“@attributes”:{
“xmlns:samlp”:“urn:oasis:names:tc:SAML:2.0:protocol”,
“ID”:“U 482d7b9c-3e50-47cb-aa64-4e3655352c64”,
“版本”:“2.0”,
“发行人”:“2019-06-27T17:02:47.711Z”,
“目的地”:https://jjds-sunrise--cqsupport--c.cs102.visual.force.com/apex/ResponseReceiver",
“回复:”Azure9849028456“
}
}
};

log(jsonObject[“samlp:Response”][“@attributes”].ID)现在我得到一个错误,说无法读取的属性'ID'undefined@BonishKoirala如果有任何更改,请更正JSON,上面的代码片段适用于问题中提供的对象。我在尝试访问值时缺少@。非常感谢。现在我收到一个错误,显示无法读取的属性“ID”undefined@BonishKoirala如果有任何更改,请更正JSON,上面的代码片段适用于问题中提供的对象。我在尝试访问值时缺少@。非常感谢。您只能对有效标识符的属性名称使用点属性访问,也就是说,您可以对变量名称使用点属性访问。顺便说一句,你所做的不是解析,这已经发生了。您只是试图访问一个对象的属性,JSON部分是不相关的。您只能对有效标识符的属性名称使用点属性访问,也就是说,可以对变量名称使用点属性访问。顺便说一句,你所做的不是解析,这已经发生了。您只是试图访问对象的属性,JSON部分是不相关的。