點燈坊

失くすものさえない今が強くなるチャンスよ

使用 keys() 將 Object 所有 Key 轉成 Array

Sam Xiao's Avatar 2021-02-25

若要將 Object 的所有 Key 轉成 Array,可使用 Ramda 的 keys()

Version

Ramda 0.27.1

Simple Object

import { keys } from 'ramda'

let data = {
  0: 'a',
  1: 'b',
  2: 'c',
}

keys(data) // ?

data 為一般 Object,可使用 keys() 取得所有 key。

keys()
{k: v} → [k]
將 Object 的 key 部分轉成 Array

{k: v}:data 為 Object

[k]:回傳以 key 所構成 Array

keys001

Simple Array

import { keys } from 'ramda'

let data = ['a', 'b', 'c']

keys(data) // ?

keys() 也能用於一般 Array,將回傳其所有 index。

keys000

Conclusion

  • 當 data 為 Object,而我們期望為 Array 時,可先用 keys() 轉成 Array,再用 map() 轉成我們要的格式

Reference

Ramda, keys()