forgeplus-react-v2/src/forge/Utils/utils.js

40 lines
1002 B
JavaScript

export function formatNumber(num) {
if (num === undefined || num === null) return
if (num >= 1e9) {
return (num / 1e9).toFixed(1) + 'B'; // 十亿
} else if (num >= 1e6) {
return (num / 1e6).toFixed(1) + 'M'; // 百万
} else if (num >= 1e3) {
return (num / 1e3).toFixed(1) + 'K'; // 千
} else {
return num.toString(); // 小于 1000 的数字原样返回
}
}
export function formatNumberWithCommas(num) {
if (num === undefined || num === null) return
return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
/**
* 下载
* @param url 下载地址
* @param name 下载名称
* @param msg 成功消息
*/
export const downloadFunc = (url, name) => {
const link = document.createElement('a')
link.href = url
link.download = name || 'download'
document.body.appendChild(link)
setTimeout(() => {
link.click()
if (url.startsWith('blob:')) {
URL.revokeObjectURL(url)
}
document.body.removeChild(link)
}, 50)
}