iT邦幫忙

2023 iThome 鐵人賽

DAY 25
0
Software Development

Should I use fp-ts系列 第 25

[Should I use fp-ts?] Day 25 - fp-ts Array

  • 分享至 

  • xImage
  •  

[Should I use fp-ts?] Day 25 - fp-ts Array

在本系列文中,所有的程式碼都可以在 should-i-use-fp-ts 找到,今日的範例放在 src/day-25 並且有測試可以讓大家練習。

Array

今天繼續介紹 Array 的常用函數: last, lookup

last

const last: <A>(as: A[]) => Option<A>;

pipe(
	xs, // [1, 2, 3]
	last // O.some(3)
)

pipe(
	xs, // []
	last // O.none
)

last 就如同前幾天介紹到的 head 一樣,在可以獲取時會是 O.some,否則為 O.none,兼顧安全性和簡潔性。

lookup

const lookup: { (i: number): <A>(as: A[]) => Option<A>; <A>(i: number, as: A[]): Option<A> };

pipe(
	xs, // [1, 2, 3]
	lookup(1) // O.some(2)
)

pipe(
	xs, // [1, 2, 3]
	loockup(3) // O.none
)

lookup(i) 可以視為 type safexs[i]

今天的主題在 should-i-use-fp-tssrc/day-25 並且有測試可以讓大家練習。

Reference

Array.ts | fp-ts


上一篇
[Should I use fp-ts?] Day 24 - fp-ts Array
系列文
Should I use fp-ts25
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言