export class StringUtil { /**小数转成保留几位小数的字符串*/ public static ToFixed(s:number,count:number):string{ return s.toFixed(count).toString(); } /**秒转成 00:00时间格式*/ public static ToTimeString(s:number):string{ s = Math.floor(s); let m = Math.floor(s/60); s=s-m*60; let mm=m.toString(); if(mm.length<=1){ mm = "0".concat(mm); } if(s<10){ return `${mm}:${"0".concat(s.toString())}`; } return `${mm}:${s}`; } /**秒*/ public static ToSce(s:number,u:string="s"):string{ s = Math.floor(s); return `${s}${u}`; } /**货币值转字符 */ public static ToMoneyString(n:number):string{ if(n>1000000){ let m=Math.floor(n*0.000001); n-=m*1000000; if(n>1000){ return `${m}M${Math.floor(n*0.001)}K`; } return `${m}M`; }else if(n>1000){ let m=Math.floor(n*0.001); n-=m*1000; if(n>100){ n=Math.floor(n*0.01); return `${m}K${n}`; } return `${m}K`; } return n.toString(); } /**毫秒转秒显示*/ public static MS2S(ms:number):string{ return (ms*0.001).toFixed(1); } /** * 去掉前后空格 * @param str * @returns {string} */ public trimSpace(str: string): string { return str.replace(/^\s*(.*?)[\s\n]*$/g, '$1'); } /** * 获取字符串长度,中文为2 * @param str */ public getStringLength(str: string): number { var strArr = str.split(""); var length = 0; for (var i = 0; i < strArr.length; i++) { var s = strArr[i]; if (this.isChinese(s)) { length += 2; } else { length += 1; } } return length; } /** * 判断一个字符串是否包含中文 * @param str * @returns {boolean} */ public isChinese(str: string): boolean { var reg = /^.*[\u4E00-\u9FA5]+.*$/; return reg.test(str); } /** * 格式化字符串 "{0},{1}.format("text0","text1") */ public format(val: string, ...param: any[]): string { for (let i = 0, len = param.length; i < len; i++) { let reg = new RegExp("({)" + i + "(})", "g"); val = val.replace(reg, param[i]); } return val; } }