在 JavaScript 中將物件轉換為陣列

Harshit Jindal 2023年10月12日
  1. 在 JavaScript 中使用 Object.keys()map() 將物件轉換為陣列
  2. 在 JavaScript 中使用 Object.entries() 將物件轉換為陣列
在 JavaScript 中將物件轉換為陣列

物件是構成現代 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 avatar Harshit Jindal avatar

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 Array