我一直在尋找這個答案,但似乎無法找到任何,我很抱歉,如果已經有一個。javascript,添加數組「圍繞」對象
我期待的對象,讓我們說這樣的事情:
{
name: 'myname',
items: [
{
itemID: '1'
},
{
itemID: '2'
},
{
itemID: '3'
}
]
}
的問題是,每當有內部「項目」只有一個對象,它看起來像這樣:
{
name: 'myname',
items: {
itemID: '1'
}
}
這意味着我的forEach函數將會中斷,因爲「items」不再是對象數組。在forEach中的每個「items」對象中都有大量的數據和事情完成,因此我寧願不必使用forEach和另一個函數,而是將其轉換爲數組並僅使用forEach。
這就是我想做的事:
if (items is not array) {
//Convert the object to this:
{
name: 'myname',
items: [
{
itemID: '1'
}
]
}
}
我有問題,以確定項目的對象數組或只是一個對象(在這兩種情況下的typeof項目將返回「對象」),並且還如果它不是數組,則如何將其轉換爲數組。非常感謝幫助或提示
可以使用這樣的事情看到相結合http://stackoverflow.com/questions/4775722/check-if-object-is-array,或者如果您使用jQuery,則使用'$ .isArray'。 – mic4ael
或類似的東西https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray –
我強烈建議你保留對象的格式,我懷疑它是響應從一個API的服務器是恆定的是否有一個或多個元素。如果你不能控制API,那麼你必須迭代對象並檢查元素是否是數組或對象。 – Tushar