file-utils.js 666 B

12345678910111213141516171819202122232425262728
  1. /**
  2. * 生成随机文件名称
  3. * 规则八位随机字符,加下划线连接时间戳
  4. */
  5. export const buildDir = () => {
  6. // 以日期作为目录
  7. const date = new Date()
  8. const dir = date.getFullYear() + '/' + (date.getMonth() + 1) + '/' + date.getDate()
  9. function rx() {
  10. return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1)
  11. }
  12. return `${dir}/${date.getTime()}-${rx()}${rx()}`
  13. }
  14. /**
  15. * 获取文件名并构建新的文件名称
  16. * 必须包含后缀
  17. */
  18. export const buildName = (name) => {
  19. const index = name.lastIndexOf('.') + 1
  20. const format = name.substring(
  21. index,
  22. name.length
  23. )
  24. return buildDir() + '.' + format
  25. }