|
12345678910111213141516171819202122 |
- /*
- * @Author: 赵伟
- * @Date: 2024-10-12 14:27:29
- * @Description: 函数式编程
- */
-
- /**
- * 安全调用函数,如果参数是 `undefined` 或 `null`,直接返回 `undefined` 或 `null`,而不会导致异常
- *
- * @param fn - 要调用的函数
- * @returns 封装后的函数,该函数的参数如果是 `undefined` 或 `null`,结果直接返回 `undefined` 或 `null`,而不会导致异常
- */
- export function safeInvoke<T, M>(
- fn: (value: T) => M | undefined | null,
- ): (value: T | undefined | null) => M | undefined | null {
- return (arg: T | undefined | null) => {
- if (arg === undefined || arg === null) {
- return arg as undefined | null;
- }
- return fn(arg);
- };
- }
|