⬅︎ Back to Credit Card formatter in Javascript
Here is a better and simpler way.formatCreditCardNumber(unformattedNumber) { let pureNumber = unformattedNumber.split(" ").join(""); let pureNumberArray = pureNumber.split(""); let formattedNumberArray = []; for(let i = 0; i < pureNumberArray.length; i++){ if(!pureNumberArray[i].match(ONLY_DIGITS)){ return; } if (i != 0 && i % 4 === 0){ formattedNumberArray.push(" "); } formattedNumberArray.push(pureNumberArray[i]); } return: formattedNumberArray.join(""); }
ONLY_DIGITS = "^[0-9]*$";
Comment
Here is a better and simpler way.
formatCreditCardNumber(unformattedNumber) {
let pureNumber = unformattedNumber.split(" ").join("");
let pureNumberArray = pureNumber.split("");
let formattedNumberArray = [];
for(let i = 0; i < pureNumberArray.length; i++){
if(!pureNumberArray[i].match(ONLY_DIGITS)){
return;
}
if (i != 0 && i % 4 === 0){
formattedNumberArray.push(" ");
}
formattedNumberArray.push(pureNumberArray[i]);
}
return: formattedNumberArray.join("");
}
Replies
ONLY_DIGITS = "^[0-9]*$";