<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. java語言

    如何使用JavaScript實現香港身份格式及真偽性驗證

    時間:2025-05-20 21:34:21 java語言 我要投稿
    • 相關推薦

    如何使用JavaScript實現香港身份格式及真偽性驗證

      導語:如何使用JavaScript實現香港身份格式及真偽性驗證呢?下面是小編給大家提供的代碼實現,大家可以參考閱讀,更多詳情請關注應屆畢業生考試網。

      function IsHKID(str) {

      var strValidChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

      // basic check length

      if (str.length < 8)

      return false;

      // handling bracket

      if (str.charAt(str.length-3) == '(' && str.charAt(str.length-1) == ')')

      str = str.substring(0, str.length - 3) + str.charAt(str.length -2);

      // convert to upper case

      str = str.toUpperCase();

      // regular expression to check pattern and split

      var hkidPat = /^([A-Z]{1,2})([0-9]{6})([A0-9])$/;

      var matchArray = str.match(hkidPat);

      // not match, return false

      if (matchArray == null)

      return false;

      // the character part, numeric part and check digit part

      var charPart = matchArray[1];

      var numPart = matchArray[2];

      var checkDigit = matchArray[3];

      // calculate the checksum for character part

      var checkSum = 0;

      if (charPart.length == 2) {

      checkSum += 9 * (10 + strValidChars.indexOf(charPart.charAt(0)));

      checkSum += 8 * (10 + strValidChars.indexOf(charPart.charAt(1)));

      } else {

      checkSum += 9 * 36;

      checkSum += 8 * (10 + strValidChars.indexOf(charPart));

      }

      // calculate the checksum for numeric part

      for (var i = 0, j = 7; i < numPart.length; i++, j--)

      checkSum += j * numPart.charAt(i);

      // verify the check digit

      var remaining = checkSum % 11;

      var verify = remaining == 0 ? 0 : 11 - remaining;

      return verify == checkDigit || (verify == 10 && checkDigit == 'A');

      }

      上面那段驗證的很精密,包含身份證真實性的校驗,如果只是想驗證輸入的香港身份證格式,請使用下面的這段js。

      function IsHKID(str) {

      var strValidChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

      // basic check length

      if (str.length < 8)

      return false;

      // handling bracket

      if (str.charAt(str.length-3) == '(' && str.charAt(str.length-1) == ')')

      str = str.substring(0, str.length - 3) + str.charAt(str.length -2);

      // convert to upper case

      str = str.toUpperCase();

      // regular expression to check pattern and split

      var hkidPat = /^([A-Z]{1,2})([0-9]{6})([A0-9])$/;

      var matchArray = str.match(hkidPat);

      // not match, return false

      if (matchArray == null)

      return false;

      return true;

      }

    【如何使用JavaScript實現香港身份格式及真偽性驗證】相關文章:

    如何使用JavaScript實現倒計時10-14

    如何使用JavaScript實現頁面定時跳轉10-18

    PHP中使用crypt()實現用戶身份驗證06-15

    如何使用javascript實現瀑布流及效果加載06-17

    PHP中使用crypt()實現用戶身份驗證的實例09-03

    PHP如何通過會話控制實現身份驗證10-05

    兩種實現表單驗證的javascript方法09-19

    php如何實現驗證碼06-13

    JavaScript如何實現JSON.stringify09-19

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人