博客 / 詳情

返回

對象方法用途記錄

entries

注意:這是一個靜態方法而非原型方法。
用途:需要將對象轉換為數組進行處理時。

該方法接受一個對象,然後返回一個數組,該數組的每個元素為一組對象的鍵名和鍵值。

const arr = Object.entries({name1: 'tom', name2: 'lily'})
console.log('arr', arr)
// [['name1', 'tom'], ['name2', 'lily']]

用於結合map、filter、reduce聲明式函數進行無副作用的數據加工。
下面是對obj進行遍歷並統計每個人的合計得分示例:

const obj = { tom: [1, 2, 3], lily: [1, 2] }
const items = Object.entries(obj).map(([key, values]) => ({
  name: key,
  value: values.reduce((acc, curr) => acc += curr, 0)
}))
console.log('items', items)
// [{ name: 'tom', value: 6 }, { name: lily, value: 3 }]

Object.keys

注意:這是一個靜態方法而非原型方法。
用途:需要將對象轉換為數組進行處理時。

const obj = {
    key1: 'xx',
    key2: 'xx',
}

const items = Object.keys(obj)
console.log(items)
// ['key1', 'key2']

用途和entries差不多,只不過取value的方式比entries稍微麻煩一點,需要用中括號讀取value

user avatar lvtu 頭像
1 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.