1、 时间字符串格式化方法
2、获取URL地址问号和后面的参数信息(可能也包含HASH值)
3、实现大数字的千分符处理
!function(){ /* * 时间字符串格式化方法 * formaTime:时间格式化处理 * @params * templete:[string] 我们最后期望获取日期格式的模版,模版规则{0}->年 {1-5}->月日时分秒 * @return * [string]格式化后的时间字符串 * by rockshang on 2020/11/17 */ function formateTime(template="{0}年{1}月{2}日 {3}时{4}分{5}秒"){ let timeAry = this.match(/\d+/g); return template.replace(/\{(\d+)\}/g,(...[,$1])=>{ let time = timeAry[$1] || "00"; return time.length < 2 ? "0" + time : time; }); } /* * queryURLParams:获取URL地址问号和后面的参数信息(可能也包含HASH值) * @params * @return * [object]把所有问号参数信息以键值对的方式存储起来并且返回 * by rockshang on 2020/11/17 */ function queryURLParams(){ let obj = {}; this.replace(/([^#?&#]+)=([^#?&#]+)/g,(...[,$1,$2])=>obj[$1] = $2) this.replace(/#([^#?&#]+)/g,(...[,$1])=>obj['HASH']=$1); return obj } /* * millimeter:实现大数字的千分符处理,使用正向预查?= 只匹配不捕获 * @params * @return * [string]千分符后的字符串 * by rockshang on 2020/11/17 */ function millimeter(){ return this.replace(/\d{1,3}(?=(\d{3})+$)/g,content=>content+',') } ["formateTime","queryURLParams","millimeter"].forEach(item=>{ String.prototype[item] = eval(item); });}();