如何在 JavaScript 中獲取物件的長度

Kirill Ibrahim 2023年1月30日 2020年11月24日
  1. 使用 Object.keys() 方法來獲取 JavaScript 中物件的長度
  2. 在 JavaScript 中使用 for...in 迴圈來獲取一個物件的長度
如何在 JavaScript 中獲取物件的長度

我們想在 JavaScript 中獲得一個物件的長度,但物件沒有長度屬性。只有陣列和字串才有 length 屬性。

let object1 = {name: "Mark", age:30};
let string1 = 'Delftstack';
let array1 = [1,2,3];
console.log(object1.length);
console.log(string1.length);
console.log(array1.length);

輸出:

undefined
10 
3

我們將介紹不同的方法來獲取 JavaScript 中物件的長度。

使用 Object.keys() 方法來獲取 JavaScript 中物件的長度

Object.keys() 方法返回一個 Object 的屬性陣列。我們使用 length 屬性來獲取鍵的數量。

例子:

const getLengthOfObject = (obj) => {
  let lengthOfObject = Object.keys(obj).length; 
  console.log(lengthOfObject);
}

getLengthOfObject({ id: 1, name: 'Mark', age: 30 } );

輸出:

3

在 JavaScript 中使用 for...in 迴圈來獲取一個物件的長度

它迭代物件的屬性,並將在迴圈中增加屬性的計數器。

例子

const getLengthOfObject = (obj) => {
  
  let length0fObject = 0;
  
  for(let key in obj){
    length0fObject++;
  }

  console.log(length0fObject);
  return length0fObject;
} 

getLengthOfObject({ id: 1, name: 'Mark', age: 30 } );

輸出:

3

示例:輸出

const getLengthOfObject = (obj) => {
  
  let length0fObject = 0;
  
  for(let key in obj){
     if (obj.hasOwnProperty(key)){
           length0fObject++;
     }
  }

  console.log(length0fObject);
  return length0fObject;
} 

getLengthOfObject({ id: 1, name: 'Mark', age: 30, country: "USA", job: "software developer" } );

hasOwnProperty() 函式是 JavaScript 中的一個內建函式,用於檢查物件是否擁有指定的屬性,它根據物件是否擁有指定的屬性返回 truefalse

相關文章 - JavaScript Object