parseFileName
解析文件名提取文件名和后缀
引入版本
0.45.0
Demo
ts
import { parseFileName } from '@wyfex/iutils'
// 1. 标准带后缀文件
console.log(parseFileName('index.vue')) // { name: 'index', ext: '.vue' }
console.log(parseFileName('data.json')) // { name: 'data', ext: '.json' }
// 2. 无后缀纯文件名
console.log(parseFileName('README')) // { name: 'README', ext: '' }
// 3. 隐藏文件(开头带点)
console.log(parseFileName('.gitignore')) // { name: '', ext: '.gitignore' }
console.log(parseFileName('.env.local')) // { name: '', ext: '.env.local' }
// 4. 文件末尾带点
console.log(parseFileName('file.')) // { name: 'file', ext: '' }
// 5. 多级后缀(取最后一段后缀)
console.log(parseFileName('file.v1.0.zip')) // { name: 'file.v1.0', ext: '.zip' }
// 6. 空字符串、纯空格
console.log(parseFileName('')) // { name: '', ext: '' }
console.log(parseFileName(' ')) // { name: '', ext: '' }
// 7. 文件名带首尾空格
console.log(parseFileName(' demo.md ')) // { name: 'demo', ext: '.md' }
// 8. JS非法入参容错
console.log(parseFileName(null))
console.log(parseFileName(undefined))
console.log(parseFileName(123))
console.log(parseFileName({}))
console.log(parseFileName([]))
// 以上全部输出 { name: '', ext: '' }