實務上常遇到在 Function Pipeline 中處理 Array,但結果卻是 Object,此時可用 zipObj()
加以轉換。
Version
Ramda 0.27.1
zipObj()
import { zipObj } from 'ramda'
let data1 = ['a', 'b', 'c']
let data2 = [1, 2, 3]
let f = zipObj
f (data1) (data2) // ?
若想兩個 Array 合併成 Object,可使用 zipObj()
合併。
zipObj()
[String] → [*] → {String: *}
將兩個 Array 合併成單一 Object
[String]
:提供 key 的 Array
[*]
:提供 value 的 Array
{String: *}
:合併成單一 Object
Conclusion
- 實務上常會遇到 key 與 value 來自不同 Array,最後要合併成單一 Object,此時
zipObj()
就非常好用