剛在撰寫程式碼時, 發現要取回 aws cloudsearch 中的搜尋使用時間, 其傳回的 json 參數中, 使用了減號, 該鍵值為 time-ms , 其實很直覺地要使用, 但又覺得怪怪的, 一執行馬上就有問題.
因為原來的 jsonObj.time-ms 會被視為 jsonObj.time – ms , 所以必須調整寫法, 正確寫法如下:
jsonObj["time-ms"]
這樣就可以了, 當然, 該回應的 json 中, 該鍵值(key)也必須是使用引號包起來的, 否則該 json 物件也會有問題.
測試程式碼如下:
var a = { "mykey": "value1", "my-key": "value2", } alert(a["my-key"]);
會回應 value2 這樣就對了.
參考資料:
http://stackoverflow.com/questions/13869627/unable-to-access-json-property-with-dash