工作的时候用到的记录一下,以后继续更新
1、身份证部分隐藏
idnumfilter (value) { // 身份证星号
if (value) {
let val = value.replace(/(.{6}).*(.{4})/,"$1******$2")
return val
} else {
return ''
}
}
2、电话号码部分隐藏
phonefilter (value) { // 号码星号
if (value) {
let val = value.replace(/(.{3}).*(.{4})/,"$1****$2")
return val
} else {
return ''
}
}
3、名字部分隐藏
namefiletr (value) { // 名字星号
if (value.length === 2) {
let val = value.replace(/(.{1}).*(.{0})/,"$1*$2")
return val
} else if (value.length > 2) {
let val = value.replace(/(.{1}).*(.{1})/,"$1*$2")
return val
}
}
4、字符串去空格
blankfiletr (value) { // 去空格
let val = value.replace(/\s/g,'')
return val
}
5、毫秒和秒转时间格式
formatSeconds (value) {
var offset = parseInt(value);// 单位为秒
var offset = parseInt(value/1000);// 单位为毫秒
var secLeft = offset%60;
var minLeft = Math.floor(offset/60)%60;
var hourLeft = Math.floor(offset/60/60)%24;
var dayLeft = Math.floor(offset/60/60/24);
var min = minLeft
var hour = hourLeft
var day = dayLeft
// 补0操作
secLeft = (secLeft<10 ? '0' : '') + secLeft;
minLeft = (minLeft<10 ? '0' : '') + minLeft;
hourLeft = (hourLeft<10 ? '0' : '') + hourLeft;
// )拼接时间格式,返回值
let result
if (min <= 0 && hour <= 0 && day <= 0) {
result = '00' + ':' + secLeft ;
} else if (min > 0 && hour <= 0 && day <= 0) {
result = minLeft + ':' + secLeft ;
} else if (min > 0 && hour > 0 && day <= 0) {
result = hourLeft + ':' + minLeft + ':' + secLeft ;
} else {
result = dayLeft + ':' + hourLeft + ':' + minLeft + ':' + secLeft;
}
return result;
}
6、两字符串A中包含B相同的字变色
stringcovercolor (value,text) {
let res = new RegExp("(" +text+ ")",'g');
value = value.replace(res,"<span style='color:red;'>" + text+"</span>");
return value;
}
// 调用 value ,text对应stringA,stringB
<div>{{stringA | stringcovercolor(stringB)}}</div>
// 如果是绑定在v-html则这么写,查询资料后的个人见解。
在当前页面中写过滤函数
filters:{
stringcovercolor(value,text){
let res = new RegExp("(" +text+ ")",'g');
value = value.replace(res,"<span style='color:#1E81D2;'>" + text+"</span>");
return value;
}
},
data () {
return {
text: '卡',
name: '社保卡换卡'
}
}
// html
<div class="name" v-html="$options.filters.stringcovercolor(name,text)"></div>
效果图
7、某时间至今多少天,时间格式:create_time: “2019-04-11 10:58:41”
datedifference (value) {
var data1,
diff,
iDays;
data1 =Date.parse(value)
var nowdate = Date.now()
diff = nowdate - data1
iDays = Math.floor(diff / (24 * 3600 * 1000));
return iDays
},