指定返回类型为内联函数与流
问题描述:
我有以下功能:指定返回类型为内联函数与流
const safeNull = fn => (txt: string): string => (isNil(txt) ? '' : fn(txt));
export const stripSpaces: Function = safeNull(txt => txt.replace(/\s/g, ''));
export const safeTrim: Function = safeNull(txt => txt.trim());
我怎么说stripSpaces
和safeTrim
返回字符串。
答
你safeNull
函数类型返回返回字符串的函数。 因此,所有你需要做的就是从stripSpaces
和safeTrim
删除那些Function
类型。 流量将推断出他们回来,因为的safeNull
返回类型的字符串。
你也可以明确地定义自己的类型,如果你愿意的话,像这样:
const safeNull = fn => (txt: string): string => (isNil(txt) ? '' : fn(txt));
export const stripSpaces: string => string = safeNull(txt => txt.replace(/\s/g, ''));
export const safeTrim: string => string = safeNull(txt => txt.trim());