UNPKG

@3r/tool

Version:

🏃‍包含一些常用方法例如对象深克隆、递归调用、一一对比/数组交集、并集、差集/二维向量点乘、叉乘/股票KDJ、MACD、RSI、BOLL/验证为空、车牌号、邮箱、身份证、统一社会信用代码、手机号、版本对比/转换日期、星座、身份证解析、字节/随机颜色、手机号、身份证号码、统一社会信用代码...持续更新整合

123 lines (122 loc) 2.73 kB
/** 因数 */ interface IFactor { /** 数字a */ a: number; /** 数字b */ b: number; } /** 交换枚举 */ export declare enum InterchangeFlag { /** 进操作位置更新 */ Move = 0, /** 俩下标值更新 */ Change = 1 } /** * 数学拓展类 */ export declare class Maths { /** * 获取整数的所有因数 * @param x 未知正整数 * @returns 所有因数 */ static getFactors(x: number): IFactor[]; /** * 获取整数的所有因数通过接近程度排序 * @param x 未知正整数 * @returns 所有因数 */ static getFactorsByApproach(x: number): IFactor[]; /** * 求和 * @param array 数组 */ static sum(array: number[]): number; /** * 判断a与b符号是否相同 * @param a * @param b * @returns */ static sameSign(a: number, b: number): boolean; /** * 角度转弧度 * @param degree 角度 */ static degreeToRad(degree: number): number; /** * 弧度转角度 * @param rad 弧度 */ static radToDegree(rad: number): number; /** * 对象是否相等 * @param a * @param b */ static equal<T>(a: T, b: T): boolean; /** * 交集 * @param a * @param b */ static intersection<T>(a: T[], b: T[]): T[]; /** * 删除重复项 * @param origin */ static removeRepeat<T>(origin: T[]): T[]; /** * 补集 * @param a * @param b */ static complementarySet<T>(a: T[], b: T[]): T[]; /** * 并集 * @param a * @param b * @returns */ static union<T>(a: T[], b: T[]): T[]; /** * 数组 通过下标交互位置 * @param array * @param currentIndex * @param targetIndex */ static interchange<T>(array: T[], currentIndex: number, targetIndex: number, flag?: InterchangeFlag): T[]; /** * 阶乘 * https://www.delftstack.com/zh/howto/javascript/javascript-factorial/ * @param num 数 * @returns */ static iterationFactorial(num: number): number; /** * 勾股定理 * a²+b²=c² */ static pythagorasTheorem(a: number, b: number): number; /** * 在可及的范围内 * @param val 值 * @param min 最小 * @param max 最大 * @returns 范围内值 */ static inRange(val: number, min: number, max: number): number; } declare global { interface Number { /** * 在可及的范围内 * @param min 最小 * @param max 最大 * @returns 范围内值 */ inRange(min: number, max: number): number; } } export {};