在 JavaScript 中將物件轉換為陣列
Harshit Jindal
2023年10月12日
物件是構成現代 JavaScript 構建塊的非原始資料型別。與單一的原始資料型別不同,物件可以以複雜的方式構成多種原始資料型別。
陣列是用於儲存元素列表的單個變數。本教程介紹瞭如何在 JavaScript 中將物件轉換為鍵值對陣列。
在 JavaScript 中使用 Object.keys()
和 map()
將物件轉換為陣列
Object.keys()
方法有助於將物件中的所有可列舉屬性檢索到字串陣列中。它將物件 obj
作為引數,我們可以新增一個回撥函式來獲得所需的結果。
要將物件轉換為陣列,我們首先在物件上呼叫 Object.keys()
方法,然後在其輸出上呼叫 map()
函式以將物件的鍵和值對映到相應陣列中.它將以與物件相同的順序包含屬性。
var obj = {'2': 3, '1': 37, '23': 40, '41': 220, '115': 230};
var arr = Object.keys(obj).map(function(key) {
return [Number(key), obj[key]];
});
console.log(arr);
輸出:
[[1, 37], [2, 3], [23, 40], [41, 220], [115, 230]]
在 JavaScript 中使用 Object.entries()
將物件轉換為陣列
Object.entries()
方法的工作原理類似於 Object.keys()
方法,你也可以使用它將物件轉換為陣列。但它只返回鍵,我們不得不使用 map()
函式在陣列中重新建立可列舉的物件屬性。
Object.entries()
通過直接在陣列中返回答案來簡化任務。像 Object.keys()
一樣,屬性以與物件相同的順序返回。
var obj = {'2': 3, '1': 37, '23': 40, '41': 220, '115': 230};
var arr = Object.entries(obj);
console.log(arr);
輸出:
[
[ '1', 37 ],
[ '2', 3 ],
[ '23', 40 ],
[ '41', 220 ],
[ '115', 230 ]
]
作者: Harshit Jindal
Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn相關文章 - JavaScript Object
- 在 JavaScript 中從陣列中搜尋物件
- JavaScript 中的巢狀物件
- 在 JavaScript 中複製物件
- 更新 JavaScript 陣列中的物件
- JavaScript Map 與物件
- JavaScript 中的 Proto 與 Prototype