將數字鍵物件轉換為陣列
在處理包含具有數字鍵的物件的JSON 回應時,您可能會遇到需要轉換將它們放入數組中。雖然常見的解決方案涉及複雜的循環,但還有更有效率、更簡單的方法。
jQuery 的 $.map
一種方法利用 jQuery 的 $.map function:
var arr = $.map(obj, function(el) { return el });
此方法迭代物件的屬性並傳回
Array.map
沒有jQuery,您可以將Array.map 與Object.keys 一起使用:
var arr = Object.keys(obj).map(function(k) { return obj[k] });
這裡, Object.keys將物件的鍵轉換為數組,Array.map 檢索與這些鍵關聯的值
Object.values (ES2015)
在現代JavaScript(ES2015 及更高在版本)中,Object.values 提供了一個簡潔的解決方案:
var arr = Object.values(obj);
此函數直接傳回物件的陣列
注意:
這些方法假設 JSON 回應已解析為 JavaScript 物件。如果仍然是 JSON 字串格式,則需要先使用 JSON.parse:
var obj = JSON.parse(jsonString); var arr = Object.values(obj);
以上是如何在 JavaScript 中有效地將數字鍵控 JSON 物件轉換為陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!