ljf-common-utils
Version:
1 lines • 12 kB
Source Map (JSON)
{"version":3,"sources":["../src/utils/text.ts","../src/utils/index.ts"],"names":[],"mappings":"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","file":"index.cjs","sourcesContent":["/*\n * @Author: luojianfeng\n * @Date: 2025-01-14 16:24:39\n * @LastEditTime: 2025-01-14 16:39:03\n * @LastEditors: luojianfeng\n * @Description:\n */\n/**\n * @description: convertNum 数字单位格式化\n * @param {number} num\n * @param {*} needUnit\n * @param {*} locale\n * @return {*}\n */\nexport function convertNum(num: number, needUnit = true, locale = 'en-US') {\n if (needUnit) {\n if (locale === 'en-US') {\n if (Math.abs(num) / 1000 / 1000 / 1000 > 1) {\n return (num / 1000 / 1000 / 1000).toFixed(2) + ' billion'\n } else if (Math.abs(num) / 1000 / 1000 > 1) {\n return (num / 1000 / 1000).toFixed(2) + ' million'\n } else if (Math.abs(num) / 1000 > 1) {\n return Math.round(num / 1000) + ' thousand'\n } else {\n return Math.round(num) + ''\n }\n } else {\n if (Math.abs(num) / 10000 / 10000 > 1) {\n return (num / 10000 / 10000).toFixed(2) + ' 亿'\n } else if (Math.abs(num) / 10000 > 1) {\n return (num / 10000).toFixed(2) + ' 万'\n } else {\n return num + ''\n }\n }\n } else {\n if (locale === 'en-US') {\n if (Math.abs(num) / 1000 / 1000 / 1000 > 1) {\n return (num / 1000 / 1000 / 1000).toFixed(2)\n } else if (Math.abs(num) / 1000 / 1000 > 1) {\n return (num / 1000 / 1000).toFixed(2)\n } else if (Math.abs(num) / 1000 > 1) {\n return Math.round(num / 1000)\n } else {\n return Math.round(num)\n }\n } else {\n if (Math.abs(num) / 10000 / 10000 > 1) {\n return (num / 10000 / 10000).toFixed(2)\n } else if (Math.abs(num) / 10000 > 1) {\n return (num / 10000).toFixed(2)\n } else {\n return num\n }\n }\n }\n}\n/**\n * @description: convertNumUnit 获取单位\n * @param {number} n\n * @param {*} locale\n * @return {*}\n */\nexport function convertNumUnit(n: number, locale = 'en-US') {\n const num = Math.abs(n)\n if (locale === 'en-US') {\n if (num / 1000 / 1000 / 1000 > 1) {\n return 'billion'\n } else if (num / 1000 / 1000 > 1) {\n return 'million'\n } else if (num / 1000 > 1) {\n return 'thousand'\n } else {\n return ''\n }\n } else {\n if (num / 10000 / 10000 > 1) {\n return '亿'\n } else if (num / 10000 > 1) {\n return '万'\n } else {\n return ''\n }\n }\n}\n/**\n * @description: convertStorageUnit 计算机存储单位转换\n * @param {number} num\n * @return {*}\n */\nexport function convertStorageUnit(num: number) {\n if (num / 1024 / 1024 / 1024 / 1024 > 1) {\n return 'TB'\n } else if (num / 1024 / 1024 / 1024 > 1) {\n return 'GB'\n } else if (num / 1024 / 1024 > 1) {\n return 'MB'\n } else if (num / 1024 > 1) {\n return 'KB'\n } else {\n return 'B'\n }\n}\n/**\n * @description: convertStorageNum 根据计算机单位转换数字\n * @param {string} unit\n * @param {number} num\n * @return {*}\n */\nexport function convertStorageNum(unit: string, num: number) {\n switch (unit) {\n case 'KB':\n return Math.round(num / 1024)\n case 'MB':\n return (num / 1024 / 1024).toFixed(2)\n case 'GB':\n return (num / 1024 / 1024 / 1024).toFixed(2)\n case 'TB':\n return (num / 1024 / 1024 / 1024 / 1024).toFixed(2)\n default:\n return num\n }\n}\n// 文件大小单位转换\nexport function convertStorageSize(num: number) {\n if (num / 1024 / 1024 / 1024 / 1024 > 1) {\n return (num / 1024 / 1024 / 1024 / 1024).toFixed(2) + ' TB'\n } else if (num / 1024 / 1024 / 1024 > 1) {\n return (num / 1024 / 1024 / 1024).toFixed(2) + ' GB'\n } else if (num / 1024 / 1024 > 1) {\n return (num / 1024 / 1024).toFixed(2) + ' MB'\n } else if (num / 1024 > 1) {\n return Math.round(num / 1024) + ' KB'\n } else {\n return `${Number(num)} B`\n }\n}\n","/*\n * @Author: luojianfeng\n * @Date: 2023-07-17 09:46:48\n * @LastEditTime: 2025-01-14 16:39:36\n * @LastEditors: luojianfeng\n * @Description:公共函数\n */\n//加密字符串\n/**\n * @description 字符串变星号\n * @param {string} str - 需要传入的字符串\n * @param {number} len1 - 保留前几位不变\n * @param {number} len2 - 保留后面几位不变星号\n * @export\n */\nexport const changeToStar = (str: string, len1: number, len2 = 0): string => {\n const strLen = str.length\n let stars = ''\n for (let i = 0; i < strLen - len1 - len2; i++) {\n stars += '*'\n }\n str = str.substring(0, len1) + stars + str.substring(strLen - len2)\n return str\n}\n\n/**\n * await 包装函数\n * @param { Promise } promise\n * @param { Object= } errorExt - Additional Information you can pass to the err object\n * @return { Promise }\n */\nexport function awaitTo<T, U = Error>(\n awaited: T,\n errorExt?: object\n): Promise<[U, undefined] | [null, T]> {\n const promise = Promise.resolve(awaited) // 非Promise则转为Promise\n return promise\n .then<[null, T]>((data: T) => [null, data])\n .catch<[U, undefined]>((err: U) => {\n if (errorExt) {\n const parsedError = Object.assign({}, err, errorExt)\n return [parsedError, undefined]\n }\n\n return [err, undefined]\n })\n}\n\n/**\n * 递归查找\n * @param list\n * @param fn\n * @param childName\n * @returns\n */\nexport const deepFind = (\n list: any[],\n fn: (e: any) => boolean,\n childName = 'children'\n) => {\n const res: any[] = []\n const traverse = function (node: any[]) {\n node.forEach((item: any) => {\n if (fn(item)) {\n res.push(item)\n } else {\n item[childName] && traverse(item[childName])\n }\n })\n }\n traverse(list)\n return res\n}\n//错误提示\nexport const errorHandling = <T>(fn: (...rest: T[]) => void, args?: T[]) => {\n let result\n try {\n result = args ? fn(...args) : fn()\n } catch (error) {\n console.error(error)\n }\n return result\n}\n//获取文件后缀\nexport const getFileExtension = (filename: string): string => {\n if (!filename) return ''\n\n // 使用正则表达式匹配文件后缀\n const match = filename.match(/\\.([^.]+)$/)\n\n // 如果匹配成功,返回后缀名,否则返回空字符串\n return match ? match[1] : ''\n}\n"]}