從 JavaScript 陣列中的物件中檢索鍵和值
在給定的問題中,我們需要藉助 Javascript 從陣列中的物件中檢索鍵和值。因此,在這裡我們將藉助 Javascript 中物件類提供的兩種方法來檢索陣列中物件的鍵和值。
理解問題陳述
問題陳述是從給定的陣列中的物件中檢索鍵和值,藉助 Javascript。因此,在 Javascript 中,物件是屬性的集合,其中每個屬性都是鍵值對。為了從陣列中的物件中檢索鍵和值,我們將使用物件類的兩種 Javascript 方法。
上述問題的邏輯
為了獲取物件的鍵及其對應的值,我們可以使用 Javascript 中物件類提供的兩種方法。Object.keys(obj) 和 Object.values(obj) 是返回鍵陣列和值陣列的方法。為了從陣列中的每個物件中獲取鍵和值,我們可以使用迴圈遍歷陣列,併為每個物件呼叫 Object.keys 和 Object.values 方法。
在程式碼中,我們將初始化一個物件陣列,並使用 Object.keys 獲取陣列中第一個物件的鍵,然後我們將迴圈遍歷陣列中的每個物件。對於每個物件,我們將使用 Object.values 獲取值,並將輸出作為每次迭代的物件、鍵和值。
演算法
步驟 1:因為我們必須從陣列中的物件中檢索鍵和值,所以首先我們將定義一個物件陣列。用於檢索鍵和值。
步驟 2:定義物件後,接下來我們將使用 Object.keys 方法獲取鍵。
步驟 3:現在我們將不得不使用迴圈來迭代陣列中的每個物件。
步驟 4:在上述迴圈內,我們將使用 Object.values 方法獲取每個物件的值。
步驟 5:最後,我們將列印函式中每次迭代的物件、鍵和值。
示例
const array = [ {name: 'Amit', age: 30}, {name: 'Ajay', age: 25}, {name: 'Ankit', age: 35} ]; // get the keys from first object in array const keys = Object.keys(array[0]); for (const obj of array) { // get values for current object const values = Object.values(obj); console.log(`Object: ${JSON.stringify(obj)}, Keys: ${keys}, Values: ${values}`); }
輸出
Object: {"name":"Amit","age":30}, Keys: name,age, Values: Amit,30 Object: {"name":"Ajay","age":25}, Keys: name,age, Values: Ajay,25 Object: {"name":"Ankit","age":35}, Keys: name,age, Values: Ankit,35
複雜度
獲取函式中的鍵、值和物件的時間複雜度為 O(n^2)。這裡 n 是陣列中物件的個數。因為我們在其中嵌套了一個迴圈,我們將遍歷陣列中的每個物件,然後遍歷物件中的每個鍵。空間複雜度為 O(n),因為我們將為陣列中的每個物件建立一個新的值陣列。
結論
在上述演算法中,我們展示瞭如何使用 Javascript 從陣列中的物件中獲取鍵和值。我們分別使用 Object.keys 和 Object.values 方法獲取鍵和值。此演算法的時間和空間複雜度分別為 O(n^2) 和 O(n)。