2017-04-04 85 views
-5

如何訪問對象屬性使用for循環,我在說這個循環for (var i =0;i <= obj.length;i++)而不是for..in循環。我想用document.write()來顯示它。沒有jquery,只有javascript。使用循環訪問javascript對象屬性

var obj = { 
     id: 1, 
     description: "This space is for description", 
     severity: "This is severity", 
     assignedTo: "Name of the assigned person", 
     status: "Issue Status " 
    } 
+1

@Kinduser爲'選項Object.keys()'是存在的,所以應該幫助OP – Icepickle

+1

'for..in'只是JavaScript和你仍然可以做'文件.write()'你有'for ... in'的具體問題嗎? – Nope

+0

@Ippickle無論如何。我的意思是一些用戶在實際閱讀之前不應該濫用權限來解決問題。 –

回答

0

您能夠與Object.keys()一起使用for循環。

注意:由於提到的,它並不能保證正確的順序。

var obj = { 
 
    id: 1, 
 
    description: "This space is for description", 
 
    severity: "This is severity", 
 
    assignedTo: "Name of the assigned person", 
 
    status: "Issue Status " 
 
}, elems = Object.keys(obj); 
 

 
for (var i = 0; i < elems.length; i++) { 
 
    document.write(`Key: ${elems[i]}, Value: ${obj[elems[i]]}<br>`); 
 
}

+0

@squint我的意思是_order_的意思是鍵取決於它們何時被定義(或設置)! –

+2

@ibrahimmahrir:是的,最初的定義順序是有些人可能希望的,但是我認爲Kind用戶的回答給出了這個警告。一個實現可能確實選擇遵守這個順序,但我們不應該依賴它。 – 2017-04-04 15:12:43

+2

......我其實希望JS的實現能夠隨機化這個命令,這樣人們就不會有錯覺它可能是可靠的。 – 2017-04-04 15:16:48