前端开发中 一些实用的方法函数,可以方便实用省时省力的代码
/**
* 随机生成十六进制颜色
*/
export const randomHexColor = () => '#' + ('00000' + ((Math.random() * 0x1000000) << 0).toString(16)).substr(-6)
/**
* 获取url中的查询字符串参数
* @param {String} url url字符串
*/
export const getURLParams = (url: string) => {
const search = url.split('?')[1]
if (!search) {
return {}
}
return JSON.parse(
'{"' + decodeURIComponent(search).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"') + '"}'
)
}
// 时间格式化
export const dateformat = (value, params = 'YYYY-MM-DD HH:mm:ss') => {
return value ? dayjs(value).format(params) : ''
}
// 根据字节大小 获取 容量
export const getStorageByByte = value => {
let obj = {
ZiB: 1024 * 1024 * 1024 * 1024 * 1024 * 1024 * 1024,
EiB: 1024 * 1024 * 1024 * 1024 * 1024 * 1024,
PiB: 1024 * 1024 * 1024 * 1024 * 1024,
TiB: 1024 * 1024 * 1024 * 1024,
GiB: 1024 * 1024 * 1024,
MiB: 1024 * 1024,
KiB: 1024,
Byte: 1,
}
for (let i in obj) {
if (Number(value) >= obj[i]) {
return (Number(value) / obj[i]).toFixed(2) + ` ${i}`
}
}
return '0 Byte'
}