= API == Tools 类 工具类, 使用方法: [source,javaScript] ---- import { Tools } from 'platform-core'; Tools.xxx(y1,y2); ---- |=== | 方法名 | 说明 | stringEquals(obj1: any, obj2: any) : boolean | 判断两个字符串是否相同 | isUndefined(obj: any) : boolean | 判断一个对象是否为 undefined | isUndefinedOrNull(obj: any) : boolean | 判断一个对象是否为 null 或者 undefined | isEmpty(obj: any) : boolean | 判断一个对象是否为 null 或者 undefined 或者空字符串 | isString(obj: any) : boolean | 判断一个对象是否是字符串 | isNumber(obj: any) : boolean | 判断一个对象是否是数字 | isObject(obj: any) : boolean | 判断一个对象是否是对象类型 | isArray(obj: any) : boolean | 判断一个对象是否是数组 | isCurrentDay(date: Date) : boolean | 判断给定的日期是否是当前日期 | isBetweenTwoDates(min: Date, max: Date, date: Date): boolean | 判断一个日期是否在两个日期之间 | isWeekend(date: Date): boolean | 判断一个日期是否在周末 | isInAYear(date: Date, year: number): boolean | 判断一个日期是否在某年内 | toAMPMFormat(h: number): string | 将 24 小时转换为 am. 或 pm. 格式 | capitalize([first, ...rest]: any): string | 将句子的第一个字母大写 | lowercaseFirst([first, ...rest]: any): string | 将句子的第一个字母小写 | letterToEmoji(c: string): string | 将英文字母转成对应的 emoji 形式 | isPalindrome(str: string): boolean | 判断一个字符串是不是回文 | getFactorial(n: number): number | 计算一个数的阶乘 | getFibonacci(n: number, memo: number[]): number | 计算一个斐波那契数列第 N 项 | copyToArray(arr: any[]): any[] | 复制数组 | getUnique(arr: any[]): any[] | 数组去重 | shuffle(arr: number[]): number[] | 生成随机数字数组 | reverseString(str: string): string | 反转字符串 | containSameValues(arr1: any[], arr2: any[]): boolean | 检查两个数组是否包含相同的值 | toFahrenheit(celsius: number): number | 温度转换(摄氏度->华氏度) | toCelsius(fahrenheit: number): number | 温度转换(华氏度->摄氏度) | clearAllCookies(): void | 清除浏览器中的所有 cookie | isAsyncFunction(f: any): boolean | 检查函数是否为异步函数 | runningInBrowser(): boolean | 判断代码是否在浏览器中运行 | runningInNode(): boolean | 判断代码是否在 Node 中运行 | isDarkMode(): boolean | 判断系统是否是暗模式 | toTop(element: HTMLElement): void | 将 dom 元素滚动到顶部 | toBottom(element: HTMLElement): void | 将 dom 元素滚动到底部 | jsonToMap(json: string): Map | 将 JSON 转换为 MAP | object2Json(obj: any): string | 对象转 json 字符串 | json2Object(json: string): any | json 字符串转对象 | join(array: any, joiner: string, propertyName?: string): string | 通过连接字符串连接数组 | deepClone(target: any): any | 深度克隆对象 | buildHttpQueryString(parameters: any, encode?: true): string | 构建 Http Get 请求查询参数 url | concatUrl(url1: string, url2: string): string | 连接两个 URL 组成一个 URL | removeUrlPrefixSlash(url: string): string | 移除 URL 中所有的前导 / | removeUrlSuffixSlash(url: string): string | 移除 URL 中所有的后导 / | addClassName(target: HTMLElement, className: string): void | 给 dom 元素增加 class | removeClassName(target: HTMLElement, className: string): void | 移除 dom 元素的 class | getJavascriptElementUrls(): string[] | 获取页面所有外部引用的 javascript 的 url | appendJavascriptTag(src: string, target?: HTMLElement, callback?: any): void | 在 dom 中插入 标签元素 | download(url: string): void | 下载 URL, 创建 iframe, 并在 iframe 中下载资源, 避免页面跳转 | setTitile(title: string): void | 设置页面标题 | setFavicon(favicon: string): void | 设置页面 icon | removeDomElement(element: HTMLElement / string): void | 移除 dom 元素 | range(value: number, min: number, max: number): number | 返回在一个数值范围内的数值 | mergeObject(target: object, source: object): object | 合并对象,将源对象的属性合并到目标对象上 | objectValueEquals(o1: object, o2: object): boolean | 判断两个对象的值是否相等 | pickNotNil(object: object): object | 仅保留对象字段非空值 | extractProperties(objects: object[], propertyName: string): object[] | 抽取对象的属性 | uuid(): string | 生成 UUID | px(value: any) | 计算像素 | generateIntervalRange(minIncluded: boolean, min: any, max: any, maxIncluded: boolean) : string | 生成区间的数学表达格式字符串 | hasOwnProperty(obj: object, propertyName: string) : boolean | 判断某个对象是否含有某个属性 |=== == 全局事件 [source,javaScript] ---- import { eventBus } from 'platform-core'; // 监听全局事件 eventBus.on('onLocaleChanged',(locale:string)=>{}); // 切换语言 eventBus.on('onWindowResize',()=>{}); // 窗口尺寸变化 // 发送全局事件 eventBus.emit('eventName'); ----