帳號遮罩
by wales
HTML
<div id="result_even">
</div>
should be 1234**7890
<div id="result_odd">
</div>
should be 123***789
JavaScript
function maskBankAccount(bankAccNo) {
if (bankAccNo && bankAccNo.length > 3) {
let repeatStars = 0;
let middle = 0;
if (bankAccNo.length % 2 === 1) {
repeatStars = 3;
middle = (bankAccNo.length - 1) / 2;
} else {
repeatStars = 2;
middle = bankAccNo.length / 2;
}
console.log(middle);
return `${bankAccNo.substring(0, middle - 1)}${'*'.repeat(repeatStars)}${bankAccNo.substring(middle + repeatStars - 1)}`;
}
return '***';
}
let result = maskBankAccount("1234567890");
document.getElementById("result_even").innerHTML = result;
result = maskBankAccount("123456789");
document.getElementById("result_odd").innerHTML = result;