-1
我目前正在研究一個使用JavaScript的網絡應用程序,因爲它的前端,我遇到了對象鍵的問題。Javascript:未定義
我想訪問一個對象,我想動態獲取對象的關鍵,但每次我得到一個錯誤「未定義的鍵」。
這是我的代碼:
var data = JSON.parse(response);
sites = [];
for (var i = 0; i < Object.keys(data[0]).length; i++) {
sites.push(Object.keys(data[0])[i]);
};
for (var x = 0; x < sites.length; x++) {
for (var u = 0; u < Object.keys(data[0])[sites[x]].length; u++) {
console.log(data[0].sites[x])
}
}
data[0]
隨着:
Array[4]
BAK
:
Array[4]
BAN
:
Array[4]
BAR
:
Array[4]
BAY
:
Array[4]
BLC
:
Array[4]
BOL
:
Array[6]
BTO
:
Array[6]
CAR
:
Array[5]
CUD
:
Array[4]
DAD
:
Array[4]
sites[]
包含鍵(例如:BAK,BAN,BAY等)。 我登錄的網站,它包含正確的密鑰,但每次我打電話data[0].sites[x]
它說「未識別的對象的鍵」。如果我手動設置它data[0].BAK[x]
,它是成功的。
希望你能幫助我解決並解釋爲什麼會發生這種情況。
'sites'是自己的一個變量,而不是data'的'屬性。你有沒有嘗試過使用'console.log(data [0] .sites [x])'? – evolutionxbox
你可以替換一些特定的行Object.keys(data [0])。請以response.length –
替換,請以文字符號添加您的數據。 –