69. 元组分块
中等
在 lodash 中,有一个非常好用的方法 chunk
,它的作用是将数组拆分成多个 size
长度的区块,并将这些区块组成一个新数组。如果数组无法被分割成全部等长的区块,那么最后剩余的元素将组成一个区块。
实现一个通用的工具类型 Chunk<T, N>
,它接受两个必需的类型参数,T
必须是一个元组,N
必须是一个大于或等于 1 的整数。
例如:
type exp1 = Chunk<[1, 2, 3], 2> // expected to be [[1, 2], [3]]
type exp2 = Chunk<[1, 2, 3], 4> // expected to be [[1, 2, 3]]
type exp3 = Chunk<[1, 2, 3], 1> // expected to be [[1], [2], [3]]