我正在用这个 API 编写一个库:
export var reduce = <T, U>(
tArray: T[],
tReducer: (current: U, tItem: T, index: number, tArray: T[]) => U,
options: IChunkifyOptions = DEFAULT_OPTIONS,
memo?: U
): Promise<U>
与标准 JavaScript reduce一样,该实现使用tArray
as memo
if nomemo
提供的第一项。
if (memo === undefined) {
memo = tArray[0]; // Type 'T' is not assignable to Type 'U'
}
铸造 ( <U>
) 合理地给出,Neither Type 'T' nor Type 'U' is assignable to the other.
什么是定义 API 的合理方式?