Skip to content

Instantly share code, notes, and snippets.

@Austinhs
Created May 22, 2023 15:35
Show Gist options
  • Select an option

  • Save Austinhs/ea3dc0f5e18eb27b0c2610c468bbaf4e to your computer and use it in GitHub Desktop.

Select an option

Save Austinhs/ea3dc0f5e18eb27b0c2610c468bbaf4e to your computer and use it in GitHub Desktop.
getCreditCardType
function getCreditCardType(cc) {
let amex = new RegExp('^3[47][0-9]{0,13}$');
let visa = new RegExp('^4[0-9]{0,12}(?:[0-9]{3})?$');
let mastercard = new RegExp('^5[1-5][0-9]{0,14}$');
let mastercard2 = new RegExp('^2[2-7][0-9]{0,14}$');
let disco1 = new RegExp('^6011[0-9]{0,12}[0-9]*$');
let disco2 = new RegExp('^62[24568][0-9]{0,13}[0-9]*$');
let disco3 = new RegExp('^6[45][0-9]{0,14}[0-9]*$');
if (visa.test(cc)) {
return 'VISA';
}
if (amex.test(cc)) {
return 'AMEX';
}
if (mastercard.test(cc) || mastercard2.test(cc)) {
return 'MASTERCARD';
}
if (disco1.test(cc) || disco2.test(cc) || disco3.test(cc)) {
return 'DISCOVER';
}
return undefined;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment