• 判断目标是否是promise like

    参考is-promise

    类型参数

    • T
    • S

    参数

    • target: S | PromiseLike<T>

    返回 target is PromiseLike<T>

    isPromiseLike({}); // false
    isPromiseLike(Promise.resolve()); // true
    isPromiseLike(null); // false
    isPromiseLike(null); // false
    isPromiseLike(undefined); // false
    isPromiseLike(0); // false
    isPromiseLike(-42); // false
    isPromiseLike(42); // false
    isPromiseLike(''); // false
    isPromiseLike('then'); // false
    isPromiseLike(false); // false
    isPromiseLike(true); // false
    isPromiseLike({}); // false
    isPromiseLike({ then: true }); // false
    isPromiseLike([]); // false
    isPromiseLike([true]); // false
    isPromiseLike(() => {}); // false

    const promise = {
    then: () => {},
    };
    isPromiseLike(promise); // true
    const fn = () => {};
    fn.then = () => {};
    isPromiseLike(fn); // true