Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | 6x 1x 6x 3x 2x 2x 2x 1x 3x 7x 1x 7x 4x 3x 3x 3x 3x 1x 3x 6x 1x 6x 3x 2x 2x 2x 1x 3x 7x 1x 7x 4x 2x 2x 2x 2x 3x 8x 5x 1x 1x 4x 2x 2x 2x 2x 2x 1x 1x 3x | /**
* this util module is about to anonymize strings like phone, user name, account no and so on
* @module angle-util/anonymizer
*/
export default {
fixMobileNo (phone: number | string): string {
if (typeof (phone) === 'number') {
// change phone into string type at first
phone = phone.toString()
}
if (phone) {
if (phone.length === 11) {
// valid mobile length
let prefix = phone.substring(0, 3)
let suffix = phone.substring(phone.length - 4)
return `${prefix}****${suffix}`
} else {
return phone
}
} else {
return ''
}
},
fixTelNo (tel: number | string): string {
if (typeof (tel) === 'number') {
tel = tel.toString()
}
// NOTE 保留前3,后4,其他位隐匿
if (tel) {
if (tel.length >= 8) {
let prefix = tel.substring(0, 3)
let suffix = tel.substring(tel.length - 4)
let anonyLength = tel.length - 7
return `${prefix}${'*'.repeat(anonyLength)}${suffix}`
} else {
return tel
}
} else {
return ''
}
},
fixCardNo (cardNo: number | string): string {
if (typeof (cardNo) === 'number') {
cardNo = cardNo.toString()
}
// NOTE 隐匿倒数第5位至往前共9位内容
if (cardNo) {
if (cardNo.length >= 16) {
const prefix = cardNo.substring(0, cardNo.length - 13)
const suffix = cardNo.substring(cardNo.length - 4)
return `${prefix}*********${suffix}`
} else {
return cardNo
}
} else {
return ''
}
},
fixCertNo (certNo: number | string): string {
if (typeof (certNo) === 'number') {
certNo = certNo.toString()
}
// NOTE 隐匿倒数第6位至往前共4位内容
if (certNo) {
if (certNo.length >= 15) {
const prefix = certNo.substring(0, certNo.length - 9)
const suffix = certNo.substring(certNo.length - 5)
return `${prefix}****${suffix}`
} else {
return certNo
}
} else {
return ''
}
},
fixName (name: string, hideFirst = false): string {
if (name) {
if (hideFirst) {
// 隐藏姓,显示名
let suffix = name.substring(1)
return `*${suffix}`
} else {
// 隐藏除首尾的其他内容
if (name.length > 2) {
let prefix = name[0]
let suffix = name[name.length - 1]
let anonyLength = name.length - 2
return `${prefix}${'*'.repeat(anonyLength)}${suffix}`
} else if (name.length === 2) {
return `${name[0]}*`
} else {
return name
}
}
} else {
return ''
}
}
}
|