| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- /**
- * 获取文件名
- * @example filename("a/b/c.txt") // "c"
- */
- export function filename(path: string): string {
- return basename(path.substring(0, path.lastIndexOf(".")));
- }
- /**
- * 获取路径的最后一部分
- * @example basename("a/b/c.txt") // "c.txt"
- */
- export function basename(path: string): string {
- let index = path.lastIndexOf("/");
- index = index > -1 ? index : path.lastIndexOf("\\");
- if (index < 0) {
- return path;
- }
- return path.substring(index + 1);
- }
- /**
- * 获取文件扩展名
- * @example extname("a/b/c.txt") // "txt"
- */
- export function extname(path: string): string {
- let index = path.lastIndexOf(".");
- if (index < 0) {
- return "";
- }
- return path.substring(index + 1);
- }
- /**
- * 首字母大写
- * @example firstUpperCase("useInfo") // "UseInfo"
- */
- export function firstUpperCase(value: string): string {
- return value.charAt(0).toLocaleUpperCase() + value.slice(1);
- }
- /**
- * 获取地址栏参数
- * @example getUrlParam("a") // "1"
- */
- export function getUrlParam(name: string): string | null {
- // #ifdef H5
- const params = new URLSearchParams(window.location.search);
- const value = params.get(name);
- return value !== null ? decodeURIComponent(value) : null;
- // #endif
- }
- /**
- * 连接路径
- * @example pathJoin("https://www.baidu.com/", "/a/b/c.txt") // "https://www.baidu.com/a/b/c.txt"
- */
- export function pathJoin(...parts: string[]): string {
- return parts.map((part) => part.replace(/(^\/+|\/+$)/g, "")).join("/");
- }
|