我的JSON對象計算爲標誌符號:解析JSON瓦特/ @在它(arobase)
{ "@io": IO, "@type": XXX }
如果這個變量稱爲my_json
,怎樣訪問XXX的@type
價值?我試過[email protected]
,但這是給錯誤。幫助讚賞。謝謝,
尼克
我的JSON對象計算爲標誌符號:解析JSON瓦特/ @在它(arobase)
{ "@io": IO, "@type": XXX }
如果這個變量稱爲my_json
,怎樣訪問XXX的@type
價值?我試過[email protected]
,但這是給錯誤。幫助讚賞。謝謝,
尼克
用方括號用字符串:
var XXXValue = my_json['@type'];
當你有一個變量屬性名稱同樣可以使用。使用你的相同的例子:
var propertyName = '@type';
var XXXValue = my_json[propertyName];
如果它結束了評估,你可以採取的對象,可能抓住它的鑰匙。
ie obj [「@ type」]。但有些事情似乎有點關閉。
正如您發現的那樣,您不能在Javascript變量名中使用@符號,[email protected]
無效。
對你來說好消息是你可以以數組下標的形式訪問你的變量。你會這樣做:
my_json["@type"]
希望有所幫助。
正確的我如果我錯了,但我不認爲你應該在這裏使用「數組」這個詞。 –
我的第一個傾向將是在解析它之前對HTTP響應進行字符串替換。也許用「at_」替代「@」的所有實例。 –
我不明白爲什麼這個問題被拒絕,並且因爲很多人想知道如何訪問一個具有奇怪命名的對象屬性或方法,或者當他們只有一個包含字符串中屬性名稱的var時,我會調用。 – JAAulde
,因爲我相信它已被多次在這個論壇上回答http://stackoverflow.com/questions/1710103/accessing-json-fields-with-weird-characters –