2012年3月8日木曜日

クレジットカード番号から、Visa、Masterなどのカードタイプを判定するするJavaScript

クレジットカード番号から、Visa、Masterなどのカードタイプを判定するするJavaScriptが公開されています。ショッピングサイトを構築する上で、カード会社の種別などは、どうでもいい話だとは思いますが、意外と簡単に判定できるようなので、備忘録です。

このソースが本当に正しいものであれば、最初の1桁目が「3」なら、アメリカンエクスプレス、「4」ならビザ、「5」ならマスターカードということになります。もうちょっと詳しく言うと、最初の2桁が「34か37」なら、アメリカンエクスプレス、最初の1桁目が「4」なら絶対にビザ、最初の2桁が「51、または、52、または、53、または、54、または、55」ならマスターカードということになるようです。至極簡単。

function getCreditCardType(accountNumber)
{
  //start without knowing the credit card type
  var result = "unknown";

  //first check for MasterCard(最初の2桁が、51、52、53、54、55)
  if (/^5[1-5]/.test(accountNumber))
  {
    result = "mastercard";
  }

  //then check for Visa(最初の1桁が、4)
  else if (/^4/.test(accountNumber))
  {
    result = "visa";
  }

  //then check for AmEx(最初の2桁が、34か37)
  else if (/^3[47]/.test(accountNumber))
  {
    result = "amex";
  }

  return result;
}

0 件のコメント:

コメントを投稿