我在下面試圖訪問JSON。在不使用eval的情況下在Javascript中訪問嵌套的JSON元素
{
"orders": {
"errorData": {
"errors": {
"error": [
{
"code": "ERROR_01",
"description": "API service is down"
}
]
}
},
"status": "fail"
}
}
我希望能夠以聲明常量來引用JSON由於該結構可以改變,我不希望被重新分解訪問所有的地方。說,我想訪問「狀態」鍵,並使用我的常量。數據引用JSON對象。我可以嘗試(這是打字稿):
public static STATUS : string = "data["orders"]["status"]";
var status_value = STATUS;
的問題是,這僅僅是分配字符串狀態變量「STATUS_VALUE」,實際上沒有計算它。我可以在STATUS上調用eval,但是我想避免這種情況。我知道有一個循環的答案,但它似乎有點過度殺人,因爲我將遍及所有代碼訪問它。 (這是一個角2應用程序,所以很多後端調用和解析JSON)
我可以寫循環函數作爲常量並調用它?任何建議都會很棒,因爲我是Javascript的新手。
爲什麼不只是'data ['order'] ['status']'?我不明白你的用例。也許你有合法的理由,但我不明白。爲什麼它需要是一個字符串,爲什麼你必須評估字符串?你爲什麼不能通過你想要的對象/值? – BotNet
我想將訪問放在一個地方,並不知道通過的對象。由於存在不同的服務和組件,因此多個打印文件需要訪問。答案是一個文件導出一個類,我可以導入到其他類的靜態方法。 –