zoukankan      html  css  js  c++  java
  • bank_card.js

      1 function init() {
      2     undefined = "undefined";
      3     mkCClist();
      4 }
      5 
      6 function ccchk(cdi) {
      7     output1 = "";
      8     if (cdi != "" && cdi != null) {
      9         output1 = "Processing...";
     10         var cf = sbtString(cdi, " -/abcdefghijklmnopqrstuvwyzABCDEFGHIJLMNOPQRSTUVWYZ|#()[]{}?%&=!?+*.,;:'");
     11         var cn = chkCard(cf);
     12         var clcd = chkLCD(cf);
     13         var clcdt = "NOT PASSED";
     14         if (clcd) {
     15             clcdt = "PASSED";
     16         }
     17         var ccck = chkCCCksum(cf, cn);
     18         var ccckt = "NOT PASSED";
     19         if (ccck) {
     20             ccckt = "PASSED";
     21         }
     22         var cjd = "INVALID CARD NUMBER";
     23         if (clcd && ccck) {
     24             cjd = "This card number appears to be valid.";
     25         }
     26         var out = "";
     27         out += "Card type       : " + cn + "
    ";
     28         out += "CCChecksum      : " + ccckt + "
    ";
     29         out += "Luhn Check Digit: " + clcdt + "
    ";
     30         out += cjd;
     31         output1 = out;
     32     }
     33 }
     34 
     35 function ccngen(p, tr) {
     36     tr *= 1.0;
     37     if (tr < 1 || tr == null) {
     38         tr = 1;
     39     }
     40     output2 = "";
     41     if (p != "" && p != null) {
     42         var cn = chkCard(p);//去掉非数字
     43         for (var i = tr; i >= 1; i--) {
     44             output2 = "Processing... " + i;
     45             var cdi = sbtStringSpRnd(p, "x", "0123456789");  //非x保留,x替换为一个0-9的随机数
     46             var cf = sbtString(cdi, " -/abcdefghijklmnopqrstuvwyzABCDEFGHIJLMNOPQRSTUVWYZ");//数字保留字母去掉
     47             var clcd = chkLCD(cf);
     48             var ccck = chkCCCksum(cf, cn);
     49             if (clcd && ccck) {
     50                 break;
     51             }
     52         }
     53         var out = "Couldn't find any valid number for given pattern";
     54         if (clcd && ccck) {
     55             var cn = chkCard(cdi);
     56             var ccnspc = "";
     57    //         for (var j = 0; j <= 3; j++) {
     58    //             if (document.console.ccnsp.options[j].selected) {
     59    //                 break;
     60    //             }
     61             }
     62 //            if (j == 1) {
     63 //                ccnspc = " ";
     64 //            }
     65 //            if (j == 2) {
     66 //                ccnspc = "-";
     67 //            }
     68             var cdif = "";
     69             for (var i = 1; i <= cdi.length; i++) {
     70                 var aS = midS(cdi, i, 1);
     71                 if (aS == " ") {
     72                     aS = ccnspc;
     73                 }
     74                 cdif += aS;
     75             }
     76             var out =  cdif;
     77         }
     78         output2 = out;
     79         return output2;
     80     }
     81 
     82 
     83 function chgccp() {
     84     mkCClist();
     85 //    for (var j = 0; j <= tw - 1; j++) {
     86 //        if (document.console.ccpp.options[j].selected) {
     87 //            break;
     88 //        }
     89 //    }
     90 //    document.console.ccp.value = c[j + 1];
     91 }
     92 
     93 function chkCard(cdi) {
     94     cdi += "";
     95     if (c[1] == undefined || c[1] == null || c[1] == "") {
     96         mkCClist();
     97     }
     98     var ccn = 0;
     99     var cn = "unknown"
    100     var cf = sbtString(cdi, " -/abcdefghijklmnopqrstuvwyzABCDEFGHIJLMNOPQRSTUVWYZ");//去掉非数字
    101     if (leftS(cf, 1) == "4") {
    102         cf = leftS(cf, 8);
    103     }
    104     for (var i = 1; i <= tw; i++) {
    105         var cct = sbtString(c[i], " -/abcdefghijklmnopqrstuvwyzABCDEFGHIJLMNOPQRSTUVWYZ");
    106         if (leftS(cf, 1) == "4") {
    107             cct = leftS(cct, 8);
    108         }
    109         var ccc = cmpPattern(cf, cct);
    110         if (ccc) {
    111             ccn = i;
    112             break;
    113         }
    114     }
    115     if (ccn > 0) {
    116         cn = cd[i];
    117     }
    118     return cn;
    119 }
    120 
    121 function chkCCCksum(cf, cn) {
    122     var r = false;
    123     var w = "21";
    124     // if (linstr(cn,"AmEx") || linstr(cn,"Diner")) {var w="12";}
    125     var ml = "";
    126     var j = 1;
    127     for (var i = 1; i <= cf.length - 1; i++) {
    128         var m = midS(cf, i, 1) * midS(w, j, 1);
    129         m = sumDigits(m);
    130         ml += "" + m;
    131         j++;
    132         if (j > w.length) {
    133             j = 1;
    134         }
    135     }
    136     var ml2 = sumDigits(ml, -1);
    137     var ml1 = (sumDigits(ml2, -1) * 10 - ml2) % 10;
    138     if (ml1 == rightS(cf, 1)) {
    139         r = true;
    140     }
    141     return r;
    142 }
    143 
    144 function chkLCD(cf) {
    145     var r = false;
    146     cf += "";
    147     var bl = isdiv(cf.length, 2);
    148     var ctd = 0;
    149     for (var i = 1; i <= cf.length; i++) {
    150         var cdg = midS(cf, i, 1);
    151         if (isdiv(i, 2) != bl) {
    152             cdg *= 2;
    153             if (cdg > 9) {
    154                 cdg -= 9;
    155             }
    156         }
    157         ctd += cdg * 1.0;
    158     }
    159     if (isdiv(ctd, 10)) {
    160         r = true;
    161     }
    162     return r;
    163 }
    164 
    165 function mkCClist() {
    166     tw = 2;
    167     c = new makeArray(tw);
    168     cd = new makeArray(tw);
    169     var i = 1;
    170     c[i] = "622202360547xxxxxxx";
    171     cd[i] = "工商银行";
    172     i++;
    173     c[i] = "622617310xxxxxxx";
    174     cd[i] = "民生银行";
    175     i++;
    176 }
    177 
    178 // Powered by MilkieX - http://www.ElfQrin.com
    179 function leftS(aS, n) {//截取参数一中参数二个字符返回
    180     aS += "";
    181     var rS = "";
    182     if (n >= 1) {
    183         rS = aS.substring(0, n);
    184     }
    185     return rS;
    186 }
    187 
    188 function rightS(aS, n) {
    189     aS += "";
    190     var rS = "";
    191     if (n >= 1) {
    192         rS = aS.substring(aS.length - n, aS.length);
    193     }
    194     return rS;
    195 }
    196 
    197 function midS(aS, n, n2) {
    198     aS += "";
    199     var rS = "";
    200     if (n2 == null || n2 == "") {
    201         n2 = aS.length;
    202     }
    203     n *= 1;
    204     n2 *= 1;
    205     if (n < 0) {
    206         n++;
    207     }
    208     rS = aS.substring(n - 1, n - 1 + n2);
    209     return rS;
    210 }
    211 
    212 function linstr(aS, bS) {
    213     aS += "";
    214     bS += "";
    215     var r = false;
    216     if (leftS(aS, bS.length) == bS) {
    217         r = true;
    218     }
    219     return r;
    220 }
    221 
    222 function sbtString(s1, s2) {//参数1 中的字符在参数2中没有时 将该字符追加到返回值中
    223     var ous = "";
    224     s1 += "";
    225     s2 += "";
    226     for (var i = 1; i <= s1.length; i++) {
    227         var c1 = s1.substring(i - 1, i);
    228         var c2 = s2.indexOf(c1);
    229         if (c2 == -1) {
    230             ous += c1;
    231         }
    232     }
    233     return ous;
    234 }
    235 
    236 
    237 function sbtStringSpRnd(s1, s2, bS) {
    238     if (bS == null || bS == "") {
    239         bS = "0123456789";
    240     }
    241     var ous = "";
    242     bS += "";
    243     for (var i = 1; i <= s1.length; i++) {
    244         var c1 = s1.substring(i - 1, i);//从头开始截取参数1
    245         var c2 = s2.indexOf(c1);//从参数一中截取的字符在参数二中的位置
    246         if (c2 == -1) {
    247             ous += c1;//如果参数二中没有参数1中截取的字符则将该字符存入ous,否则存入mids('0123456789',random(1,9),1)
    248             //mids取参数1的第参数二位到参数二加参数三位,这他妈不就是0-9随便取一个数吗?
    249         } else {
    250             ous += midS(bS, Math.floor(Math.random() * (bS.length - 1)) + 1, 1);
    251         }
    252     }
    253     return ous;
    254 }
    255 
    256 function cmpPattern(a, p, x) {
    257     if (x == "" || x == null) {
    258         x = "x";
    259     }
    260     x = "" + x.substring(0, 1);
    261     a += "";
    262     p += "";
    263     r = false;
    264     mc = 0;
    265     if (a.length == p.length) {
    266         for (var i = 1; i <= a.length; i++) {
    267             a1 = midS(a, i, 1);
    268             p1 = midS(p, i, 1);
    269             if (a1 == p1 || p1 == x) {
    270                 mc++;
    271             }
    272         }
    273     }
    274     if (mc == a.length) {
    275         r = true;
    276     }
    277     return r;
    278 }
    279 
    280 function isdiv(a, b) {
    281     if (b == null) {
    282         b = 2;
    283     }
    284     a *= 1.0;
    285     b *= 1.0;
    286     var r = false;
    287     if (a / b == Math.floor(a / b)) {
    288         r = true;
    289     }
    290     return r;
    291 }
    292 
    293 function sumDigits(n, m) {
    294     if (m == 0 || m == null) {
    295         m = 1;
    296     }
    297     n += "";
    298     if (m > 0) {
    299         while (n.length > m) {
    300             var r = 0;
    301             for (var i = 1; i <= n.length; i++) {
    302                 r += 1.0 * midS(n, i, 1);
    303             }
    304             n = "" + r;
    305         }
    306     } else {
    307         for (var j = 1; j <= Math.abs(m); j++) {
    308             var r = 0;
    309             for (var i = 1; i <= n.length; i++) {
    310                 r += 1.0 * midS(n, i, 1);
    311             }
    312             n = "" + r;
    313         }
    314     }
    315     r = n;
    316     return r;
    317 }
    318 
    319 function makeArray(n) {
    320     this.length = n;
    321     for (var i = 1; i <= n; i++) {
    322         this[i] = 0;
    323     }
    324     return this;
    325 }
    326 
    327 // End of MilkieX
    328 //var dl=""+document.location; dl=dl.toLowerCase(); if (dl.substring(0,22)!="http://www.elfqrin.com" && dl.substring(0,16)!="file:///c|/data/") {window.location="/";}
    329 init();
    330 
    331 result=ccngen("622617310xxxxxxx","1000");
    332 OUT.println(result);
    333 vars.put("BANKCARD_NO",result);
      1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
      2 <HTML><HEAD><TITLE>银行卡号生成器</TITLE>
      3 <meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
      4 <meta content="all" name="robots" />
      5 <meta name="author" content="Sunny V" />
      6 <meta name="Contact" content="tool.la@gmail.com" />
      7 <meta name="Copyright" content="www.Tool.La" />
      8 <link rel="icon" href="/favicon.ico" type="image/x-icon" />
      9 <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
     10 <STYLE type=text/css>
     11 HTML BODY TABLE {
     12     FONT-WEIGHT: normal; FONT-SIZE: 12px; COLOR: #7777ee; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     13 }
     14 .edgenormal {
     15     FONT-WEIGHT: normal; FONT-SIZE: 12px; COLOR: #7777ee; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     16 }
     17 .edgebig {
     18     FONT-WEIGHT: bold; FONT-SIZE: 16px; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     19 }
     20 .edgeboardctitle {
     21     FONT-WEIGHT: bold; FONT-SIZE: 14px; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     22 }
     23 .edgeatitle {
     24     FONT-WEIGHT: bold; FONT-SIZE: 18px; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     25 }
     26 .edgeatext {
     27     FONT-WEIGHT: normal; FONT-SIZE: 13px; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     28 }
     29 .edgeasubj {
     30     FONT-WEIGHT: normal; FONT-SIZE: 14px; FONT-STYLE: italic; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     31 }
     32 .edgeadate {
     33     FONT-WEIGHT: normal; FONT-SIZE: 8pt; FONT-STYLE: normal; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     34 }
     35 .edgestitle {
     36     FONT-WEIGHT: bold; FONT-SIZE: 14px; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     37 }
     38 .edgestext {
     39     FONT-WEIGHT: normal; FONT-SIZE: 12px; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     40 }
     41 .edgessubj {
     42     FONT-WEIGHT: normal; FONT-SIZE: 8pt; FONT-STYLE: normal; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     43 }
     44 .edgedotitle {
     45     FONT-WEIGHT: bold; FONT-SIZE: 14px; BACKGROUND: #000000; FONT-FAMILY: Verdana,Arial,Helvetica; TEXT-DECORATION: none
     46 }
     47 .edgesmall {
     48     FONT-SIZE: 8pt; FONT-FAMILY: arial,helvetica; TEXT-DECORATION: none
     49 }
     50 .edgemenu {
     51     FONT-WEIGHT: bold; FONT-SIZE: 8pt; FONT-FAMILY: arial,helvetica; TEXT-DECORATION: none
     52 }
     53 .edgemenuborder {
     54     BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: black 1px solid; PADDING-LEFT: 3px; FONT-WEIGHT: bold; FONT-SIZE: 8pt; BACKGROUND: #242424; PADDING-BOTTOM: 3px; BORDER-LEFT: black 1px solid; PADDING-TOP: 3px; BORDER-BOTTOM: black 1px solid; FONT-FAMILY: arial,helvetica; TEXT-DECORATION: none
     55 }
     56 .selectinput {
     57     BORDER-TOP-WIDTH: 1px; BORDER-LEFT-WIDTH: 1px; FONT-SIZE: 8pt; BORDER-LEFT-COLOR: #7777ee; BORDER-BOTTOM-WIDTH: 1px; BORDER-BOTTOM-COLOR: #7777ee; COLOR: #7777ee; BORDER-TOP-COLOR: #7777ee; FONT-FAMILY: arial,helvetica; BACKGROUND-COLOR: #000000; BORDER-RIGHT-WIDTH: 1px; BORDER-RIGHT-COLOR: #7777ee
     58 }
     59 .submitinput {
     60     BORDER-TOP-WIDTH: 1px; FONT-WEIGHT: bold; BORDER-LEFT-WIDTH: 1px; FONT-SIZE: 8pt; BORDER-LEFT-COLOR: #7777ee; BORDER-BOTTOM-WIDTH: 1px; BORDER-BOTTOM-COLOR: #7777ee; COLOR: #7777ee; BORDER-TOP-COLOR: #7777ee; FONT-FAMILY: arial,helvetica; BACKGROUND-COLOR: #000000; BORDER-RIGHT-WIDTH: 1px; BORDER-RIGHT-COLOR: #7777ee
     61 }
     62 UL {
     63     PADDING-RIGHT: 0px; MARGIN-TOP: 0px; PADDING-LEFT: 0px; MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 0px; MARGIN-LEFT: 15px; PADDING-TOP: 0px
     64 }
     65 .STYLE1 {
     66     COLOR: #ff0000
     67 }
     68 .STYLE2 {
     69     font-size: 14px;
     70     font-weight: bold;
     71 }
     72 </STYLE>
     73 <META content="MSHTML 6.00.2800.1106" name=GENERATOR>
     74 </HEAD>
     75 <BODY>
     76 <link href="../css/tool.css" rel="stylesheet" type="text/css" />
     77 <link href="/css/css.css" rel="stylesheet" type="text/css" />
     78 <DIV align="center">
     79 <div id="title_tabs">
     80 
     81 </div>
     82 <div align="center" class="title_div">
     83 
     84 <!-- <div style="padding-bottom:2px;" class="ad-daohang">
     85 <script type="text/javascript">google_ad_client = "pub-5323028865159648";
     86 google_ad_slot = "6221500675";
     87 google_ad_width = 728;
     88 google_ad_height = 15;
     89 //
     90 </script>
     91 <script type="text/javascript"
     92 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
     93 </script>
     94 </div> -->
     95 </div>
     96 </DIV><noscript><iframe src=*></iframe></noscript> <SCRIPT language=JavaScript>if(self!=top){top.location=self.location;}</SCRIPT>
     97 <SCRIPT language=JavaScript>
     98 
     99 <!-- Copyright (C) 2000 Valerio Capello (valcap@thepentagon.com)
    100 
    101     function init() {
    102     undefined = "undefined";
    103     mkCClist();
    104 }
    105 
    106 function ccchk(cdi) {
    107     document.console.output1.value = "";
    108     if (cdi != "" && cdi != null) {
    109         document.console.output1.value = "Processing...";
    110         var cf = sbtString(cdi, " -/abcdefghijklmnopqrstuvwyzABCDEFGHIJLMNOPQRSTUVWYZ|#()[]{}?%&=!?+*.,;:'");
    111         var cn = chkCard(cf);
    112         var clcd = chkLCD(cf);
    113         var clcdt = "NOT PASSED"; 
    114         if (clcd) { 
    115             clcdt = "PASSED"; 
    116         }
    117         var ccck = chkCCCksum(cf, cn);
    118         var ccckt = "NOT PASSED"; 
    119         if (ccck) { 
    120             ccckt = "PASSED"; 
    121         }
    122         var cjd = "INVALID CARD NUMBER"; 
    123         if (clcd && ccck) { 
    124             cjd = "This card number appears to be valid."; 
    125         }
    126         var out = "";
    127         out += "Card type       : " + cn + "
    ";
    128         out += "CCChecksum      : " + ccckt + "
    ";
    129         out += "Luhn Check Digit: " + clcdt + "
    ";
    130         out += cjd;
    131         document.console.output1.value = out;
    132     }
    133 }
    134 
    135 function ccngen(p, tr) {
    136     tr *= 1.0; 
    137     if (tr < 1 || tr == null) { 
    138         tr = 1; 
    139     }
    140     document.console.output2.value = "";
    141     if (p != "" && p != null) {
    142         var cn = chkCard(p);
    143         for (var i = tr; i >= 1; i--) {
    144             document.console.output2.value = "Processing... " + i;
    145             var cdi = sbtStringSpRnd(p, "x", "0123456789");
    146             //var cdi = "6222023605478244406";
    147             var cf = sbtString(cdi, " -/abcdefghijklmnopqrstuvwyzABCDEFGHIJLMNOPQRSTUVWYZ");
    148             
    149             var clcd = chkLCD(cf);
    150             var ccck = chkCCCksum(cf, cn);
    151             if (clcd && ccck) { 
    152                 break; 
    153             }
    154         }
    155         var out = "Couldn't find any valid number for given pattern";
    156         if (clcd && ccck) {
    157             var cn = chkCard(cdi);
    158             var ccnspc = "";
    159             for (var j = 0; j <= 3; j++) {
    160                 if (document.console.ccnsp.options[j].selected) { 
    161                     break; 
    162                 }
    163             }
    164             if (j == 1) { 
    165                 ccnspc = " "; 
    166             }
    167             if (j == 2) { 
    168                 ccnspc = "-"; 
    169             }
    170             var cdif = "";
    171             for (var i = 1; i <= cdi.length; i++) {
    172                 var aS = midS(cdi, i, 1); 
    173                 if (aS == " ") { 
    174                     aS = ccnspc; 
    175                 }
    176                 cdif += aS;
    177             }
    178             var out = "Valid " + cn + " # found:
    " + cdif;
    179         }
    180         document.console.output2.value = out;
    181     }
    182 }
    183 
    184 function chgccp() {
    185     mkCClist();
    186     for (var j = 0; j <= tw - 1; j++) {
    187         if (document.console.ccpp.options[j].selected) { 
    188             break;
    189         }
    190     }
    191     document.console.ccp.value = c[j + 1];
    192 }
    193 
    194 function chkCard(cdi) {
    195     cdi += "";
    196     if (c[1] == undefined || c[1] == null || c[1] == "") { 
    197         mkCClist(); 
    198     }
    199     var ccn = 0; 
    200     var cn = "unknown"
    201     var cf = sbtString(cdi, " -/abcdefghijklmnopqrstuvwyzABCDEFGHIJLMNOPQRSTUVWYZ");
    202     if (leftS(cf, 1) == "4") { 
    203         cf = leftS(cf, 8); 
    204     }
    205     for (var i = 1; i <= tw; i++) {
    206         var cct = sbtString(c[i], " -/abcdefghijklmnopqrstuvwyzABCDEFGHIJLMNOPQRSTUVWYZ");
    207         if (leftS(cf, 1) == "4") { 
    208             cct = leftS(cct, 8); 
    209         }
    210         var ccc = cmpPattern(cf, cct);
    211         if (ccc) { 
    212             ccn = i; 
    213             break; 
    214         }
    215     }
    216     if (ccn > 0) { 
    217         cn = cd[i]; 
    218     }
    219     return cn;
    220 }
    221 
    222 function chkCCCksum(cf, cn) {
    223     var r = false;
    224     var w = "21";
    225     // if (linstr(cn,"AmEx") || linstr(cn,"Diner")) {var w="12";}
    226     //ml为卡号除了最后一位的所有位置上的数 奇数位乘以2取结果的各个位上的数字之和,偶数位不变
    227     var ml = "";
    228     var j = 1;
    229     for (var i = 1; i <= cf.length - 1; i++) {
    230         //m为卡号奇数位乘以2,卡号偶数位乘以1
    231         var m = midS(cf, i, 1) * midS(w, j, 1);
    232         //如果m的长度大于1则取每个位置上的数的总和
    233         m = sumDigits(m);
    234         ml += "" + m;
    235         j++; 
    236         if (j > w.length) { 
    237             j = 1; 
    238         }
    239     }
    240     //ml2为ml全部位上的数值之和
    241     var ml2 = sumDigits(ml, -1);
    242     //ml1为 ml2全部位上的数值之和*10-ml2 然后除以10的余数
    243     var ml1 = (sumDigits(ml2, -1) * 10 - ml2) % 10;
    244     //如果ml1为卡号最后一位则返回true
    245     if (ml1 == rightS(cf, 1)) { 
    246         r = true; 
    247     }
    248     return r;
    249 }
    250 
    251 function chkLCD(cf) {
    252     var r = false; 
    253     cf += "";
    254     //bl为卡号长度是否能被2整除
    255     var bl = isdiv(cf.length, 2);
    256     var ctd = 0;
    257     for (var i = 1; i <= cf.length; i++) {
    258         //cdg为卡号的每一位数字
    259         var cdg = midS(cf, i, 1);
    260         //如果位数的奇偶和卡号长度的奇偶不一致则cdg等于卡号位于该位的数字乘以2
    261         if (isdiv(i, 2) != bl) {
    262             cdg *= 2; 
    263             //如果cdg大于9,则cdg等于cdg-9
    264             if (cdg > 9) { 
    265                 cdg -= 9; 
    266             }
    267         }
    268         
    269         ctd += cdg * 1.0;
    270     }
    271     //如果ctd能被10整除则返回true
    272     if (isdiv(ctd, 10)) { 
    273         r = true; 
    274     }
    275     return r;
    276 }
    277 
    278 function mkCClist() {
    279     tw = 4;
    280     c = new makeArray(tw); 
    281     cd = new makeArray(tw);
    282     var i = 1;
    283     c[i] = "622202360547xxxxxxx"; 
    284     cd[i] = "工商银行"; i++;
    285     c[i] = "622617310xxxxxxx"; 
    286     cd[i] = "民生银行"; i++;
    287     c[i] = "621799290001xxxxxxx"; 
    288     cd[i] = "邮政储蓄银行"; i++;
    289     c[i] = "621790080000xxxxxxx"; 
    290     cd[i] = "中国银行"; i++;
    291 }
    292 
    293 // Powered by MilkieX - http://www.ElfQrin.com
    294 
    295 function leftS(aS, n) {
    296     aS += "";
    297     var rS = "";
    298     if (n >= 1) {
    299         rS = aS.substring(0, n);
    300     }
    301     return rS;
    302 }
    303 
    304 function rightS(aS, n) {
    305     aS += "";
    306     var rS = "";
    307     if (n >= 1) {
    308         rS = aS.substring(aS.length - n, aS.length);
    309     }
    310     return rS;
    311 }
    312 
    313 function midS(aS, n, n2) {
    314     aS += "";
    315     var rS = "";
    316     if (n2 == null || n2 == "") { 
    317         n2 = aS.length; 
    318     }
    319     n *= 1; 
    320     n2 *= 1;
    321     if (n < 0) { 
    322         n++; 
    323     }
    324     rS = aS.substring(n - 1, n - 1 + n2);
    325     return rS;
    326 }
    327 
    328 function linstr(aS, bS) {
    329     aS += ""; 
    330     bS += "";
    331     var r = false;
    332     if (leftS(aS, bS.length) == bS) { 
    333         r = true; 
    334     }
    335     return r;
    336 }
    337 
    338 function sbtString(s1, s2) {
    339     var ous = ""; 
    340     s1 += ""; 
    341     s2 += "";
    342     for (var i = 1; i <= s1.length; i++) {
    343         var c1 = s1.substring(i - 1, i);
    344         var c2 = s2.indexOf(c1);
    345         if (c2 == -1) { 
    346             ous += c1; 
    347         }
    348     }
    349     return ous;
    350 }
    351 
    352 function sbtStringSpRnd(s1, s2, bS) {
    353     if (bS == null || bS == "") { 
    354         bS = "0123456789"; 
    355     }
    356     var ous = "";
    357     bS += "";
    358     for (var i = 1; i <= s1.length; i++) {
    359         var c1 = s1.substring(i - 1, i);
    360         var c2 = s2.indexOf(c1);
    361         if (c2 == -1) { 
    362             ous += c1; 
    363         } else { 
    364             ous += midS(bS, Math.floor(Math.random() * (bS.length - 1)) + 1, 1); 
    365         }
    366     }
    367     return ous;
    368 }
    369 
    370 function cmpPattern(a, p, x) {
    371     if (x == "" || x == null) { 
    372         x = "x"; 
    373     }
    374     x = "" + x.substring(0, 1); 
    375     a += ""; 
    376     p += "";
    377     r = false; mc = 0;
    378     if (a.length == p.length) {
    379         for (var i = 1; i <= a.length; i++) {
    380             a1 = midS(a, i, 1); 
    381             p1 = midS(p, i, 1);
    382             if (a1 == p1 || p1 == x) { 
    383                 mc++; 
    384             }
    385         }
    386     }
    387     if (mc == a.length) { 
    388         r = true; 
    389     }
    390     return r;
    391 }
    392 
    393 function isdiv(a, b) {
    394     if (b == null) { 
    395         b = 2; 
    396     }
    397     a *= 1.0; 
    398     b *= 1.0;
    399     var r = false;
    400     if (a / b == Math.floor(a / b)) { 
    401         r = true; 
    402     }
    403     return r;
    404 }
    405 
    406 function sumDigits(n, m) {
    407     if (m == 0 || m == null) { 
    408         m = 1; 
    409     }
    410     n += "";
    411     if (m > 0) {
    412         while (n.length > m) {
    413             var r = 0;
    414             for (var i = 1; i <= n.length; i++) {
    415                 r += 1.0 * midS(n, i, 1);
    416             }
    417             n = "" + r;
    418         }
    419     } else {
    420         for (var j = 1; j <= Math.abs(m); j++) {
    421             var r = 0;
    422             for (var i = 1; i <= n.length; i++) {
    423                 r += 1.0 * midS(n, i, 1);
    424             }
    425             n = "" + r;
    426         }
    427     }
    428     r = n;
    429     return r;
    430 }
    431 
    432 function makeArray(n) {
    433     this.length = n;
    434     for (var i = 1; i <= n; i++) { 
    435         this[i] = 0; 
    436     }
    437     return this;
    438 }
    439 
    440 // End of MilkieX
    441 
    442 //var dl=""+document.location; dl=dl.toLowerCase(); if (dl.substring(0,22)!="http://www.elfqrin.com" && dl.substring(0,16)!="file:///c|/data/") {window.location="/";}
    443 
    444 init();
    445 
    446 // -->
    447 </SCRIPT>
    448 
    449 <CENTER>
    450 <FORM name=console>
    451 <DIV align=center><TT><FONT color=#ee0000><span class="STYLE2">银行卡号生成器</span>
    452 </FONT></TT></DIV>
    453 
    454 <P class="STYLE2">生成银行卡号 
    455 <P>Choose Pattern<BR><SELECT onchange=chgccp(); name=ccpp> 
    456   <SCRIPT language=JavaScript>
    457 <!--
    458 for (i=1;i<=tw;i++) {
    459 if (i!=1) {document.writeln("<OPTION>"+cd[i]);} else {document.writeln("<OPTION SELECTED>"+cd[i]);}
    460 }
    461 // -->
    462 </SCRIPT>
    463 </SELECT> <BR><INPUT maxLength=24 size=24 name=ccp> 
    464 <P>间隔: <SELECT name=ccnsp> <OPTION>(无)<OPTION 
    465   selected>(空格)<OPTION>-</OPTION></SELECT> <br>&nbsp;&nbsp;&nbsp; <!-- Max tries: --><INPUT type=hidden size=4 value=1000 name=tr> 
    466 <P><INPUT onclick=ccngen(document.console.ccp.value,document.console.tr.value); type=button value=生成> 
    467 
    468 <P><TEXTAREA name=output2 rows=3 wrap=VIRTUAL cols=58></TEXTAREA> 
    469 <P>
    470 <HR width="75%">
    471 
    472 <SCRIPT language=JavaScript>
    473 <!--
    474 chgccp();
    475 // -->
    476 </SCRIPT>
    477 
    478 <HR width="75%">
    479 
    480 <P class=STYLE1>警告:此工具只供学习及研究之用,不得用于其他非法用途!你已经同意此条款,由此产生的问题本站概不负责!</P>
    481 </CENTER>
    482 <script language="javascript" src="/JS/Copy.js"></script>
    483 <!-- 网站底部代码 -->
    添加注释
  • 相关阅读:
    Android开发笔记——WebView
    字符串_最小表示法求循环串的最小序列(HDU_4162)
    STL_map简单应用(HDU_1075)
    DP_最大子序列和(HDU_1003)
    STL map 使用方法(转)
    数学_线性筛法建立素数表(HDU_1262)
    學習筆記 ADO數據庫訪問技術
    C#多线程学习
    Java容器
    选取单元格的基本语句
  • 原文地址:https://www.cnblogs.com/xiaodebing/p/9492701.html
Copyright © 2011-2022 走看看