UNPKG

@motojs_sdk/utils

Version:
110 lines (107 loc) 3.82 kB
/** * 原生try函数 * ../param fn try中执行的函数体 * ../param errorFn 报错时执行的函数体,将err传入 */ declare const nativeTryCatch: (fn: () => void, errorFn?: (err: any) => void) => void; /** * 绑定事件监听器 * * @param target 目标对象,需要包含 addEventListener 方法 * @param eventName 事件名称,需要是 WindowEventMap 类型的键 * @param handler 事件处理函数 * @param options 是否使用捕获方式或传递事件对象的其他选项,默认为 false */ declare const on: (target: { addEventListener: Function; }, eventName: keyof WindowEventMap, handler: Function, opitons?: boolean | unknown) => void; /** * 移除目标元素的事件监听器 * * @param target 目标元素,包含 removeEventListener 方法的对象 * @param eventName 事件名,属于 WindowEventMap 的键 * @param handler 事件处理函数 * @param options 可选参数,事件监听器的选项,默认为 false */ declare const off: (target: { removeEventListener: Function; }, eventName: keyof WindowEventMap, handler: Function, opitons?: boolean | unknown) => void; /** * 获取当前页面的 URL 地址 * * @returns 返回当前页面的 URL 地址字符串,如果当前环境不是浏览器则返回空字符串 */ declare const getLocationHref: () => string; /** * 获取当前时间戳(毫秒级) * * @returns 返回当前时间戳 */ declare const getTimestamp: () => number; /** * 截取字符串前n个字符,并在原字符串长度大于n时添加提示信息 * * @param str 要截取的字符串 * @param interceptLength 截取长度 * @returns 截取后的字符串,如果原字符串长度大于截取长度,则在末尾添加提示信息 */ declare const interceptStr: (str: string, interceptLength: number) => string; /** * 安全的转换对象,包括循环引用,如果是循环引用就返回Loop * * @export * @param {object} obj 需要转换的对象 * @return {*} {string} */ declare const safeStringify: (obj: object) => string; /** * 将未知的类型转化为字符串,number boolear 除外 * * @param data * @returns */ declare const unknowtoString: (data: any) => string; /** * 重写一些内置方法 * @param source * @param name * @param replacement * @param isForce * @returns */ declare const replaceOld: <T>(source: T, name: keyof T, replacement: (...args: any[]) => any, isForce?: boolean) => void; /** * 返回包含id、class、innerTextde字符串的标签 * @param target html节点 */ declare const htmlElementAsString: (target: HTMLElement) => string; /** * 判断当前环境是否支持历史记录API * * @returns 如果支持历史记录API则返回true,否则返回false */ declare const supportsHistory: () => boolean; /** * 判断目标对象是否包含未知属性 * * @param target 目标对象 * @param name 属性名称 * @returns 如果目标对象包含未知属性,则返回true;否则返回false */ declare const targetHasUnknow: (target: any, name: string) => boolean; declare const nanoid: (size: number) => string; /** * 生成唯一的FeId * * @returns 返回一个字符串类型的FeId */ declare const createFeId: () => string; /** * 计算两个时间戳之间的差值(毫秒数) * * @param time1 第一个时间戳,可以是数字或字符串类型 * @param time2 第二个时间戳,可以是数字或字符串类型 * @returns 返回两个时间戳之间的差值(毫秒数) */ declare const timeDifference: (time1: number | string, time2: number | string) => number; export { createFeId, getLocationHref, getTimestamp, htmlElementAsString, interceptStr, nanoid, nativeTryCatch, off, on, replaceOld, safeStringify, supportsHistory, targetHasUnknow, timeDifference, unknowtoString };