在 JavaScript 中計算物件中的鍵的數量

Shraddha Paghdar 2023年1月30日 2022年5月10日
  1. 使用 Object.keys() 計算 JavaScript 中物件內的鍵的數量
  2. 在 JavaScript 中使用 Map() 來計算物件中的鍵的數量
在 JavaScript 中計算物件中的鍵的數量

在許多不同的程式語言中,JavaScript 中的物件經常與現實生活中的物件進行比較。JavaScript 中物件的概念類似於現實生活中的物件。

在 JavaScript 中,物件是一個獨立的實體。這個實體有它的屬性和型別。

例如,將其與手機或膝上型電腦進行比較。移動/膝上型電腦是具有屬性的物件。

移動/膝上型電腦具有顏色、設計、重量、材料、作業系統等。類似地,JavaScript 物件可以具有定義其屬性的屬性。

在今天的文章中,我們將學習如何在 JavaScript 中計算物件中鍵的數量。

使用 Object.keys() 計算 JavaScript 中物件內的鍵的數量

JavaScript 物件具有關聯的屬性。物件的屬性可以宣告為附加到 Object 的變數。

物件的屬性定義了物件的屬性。你可以使用簡單的點符號訪問物件的屬性。

此方法返回給定物件的可列舉屬性名稱陣列,以與正常迴圈類似的順序重複。

Object.keys() 返回一個陣列。該陣列包含與直接在物件上找到的可列舉屬性相對應的字串元素。

屬性的順序與手動滾動物件屬性所提供的順序相同。

語法:

Object.keys(inputObject)

inputObject 是要返回其可列舉自身屬性的輸入引數。它返回一個字串陣列,表示指定 Object 的所有可列舉屬性。

你可以在 Object.keys() 的文件中找到有關 Object.keys 的更多資訊。

例子:

const object = {
  fruit: 'apple',
  vegetable: 'tomato'
}
console.log(Object.keys(object).length)

當你在任何瀏覽器中執行上述程式碼時,你將獲得以下輸出。

輸出:

2

在 JavaScript 中使用 Map() 來計算物件中的鍵的數量

Map 物件包含類似於 JavaScript Object 的鍵值對,但它記住鍵的原始插入順序。物件和原始值可以用作鍵或值。

Map 物件按插入順序迭代其元素:JavaScript 的 for...of 迴圈返回一個鍵的數量組,其值類似於每次迭代的 JavaScript 物件。

Objectmap 共享相同的屬性:它們都允許你執行諸如設定鍵到值、刪除鍵、檢索這些值以及檢測是否儲存在鍵中的操作。出於這個原因,過去將 Object 用作 Map

元素的數量很容易從它的 size 屬性中獲得。物件中的元素數量必須手動確定。

本質上,Map 會跟蹤它的大小,所以我們只是返回一個數字欄位。它比任何其他方法都快得多。

控制物件後,將其轉換為地圖物件。在 Map() 的文件中找到有關 Map 的更多資訊。

例子:

const testMap = new Map()
testMap.set('fruit', 'apple')
testMap.set('vegetable', 'tomato')

console.log(testMap.size)

在上面的 JavaScript 示例中,我們正在建立 Map 物件的新例項。建立例項後,我們將設定物件的屬性。

當你在任何瀏覽器中執行上述程式碼時,你將獲得以下輸出。

輸出:

2
Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn

相關文章 - JavaScript Object