开发测试的时候,经常需要填写姓名、手机号、身份证号、银行卡号,既要符合格式要求、又不能重复。大家会到网上搜各种生成器。能不能自己写一个简单的生成器呢。下面是随机生成姓名、手机号、身份证号、银行卡号的js代码。

     // 生成随机姓名
     function getName(){
         var familyNames = new Array(
                 "赵",    "钱",    "孙",    "李",    "周",    "吴",    "郑",    "王",    "冯",    "陈",
                 "褚",    "卫",    "蒋",    "沈",    "韩",    "杨",    "朱",    "秦",    "尤",    "许",
                 "何",    "吕",    "施",    "张",    "孔",    "曹",    "严",    "华",    "金",    "魏",
                 "陶",    "姜",    "戚",    "谢",    "邹",    "喻",    "柏",    "水",    "窦",    "章",
                 "云",    "苏",    "潘",    "葛",    "奚",    "范",    "彭",    "郎",    "鲁",    "韦",
                 "昌",    "马",    "苗",    "凤",    "花",    "方",    "俞",    "任",    "袁",    "柳",
                 "酆",    "鲍",    "史",    "唐",    "费",    "廉",    "岑",    "薛",    "雷",    "贺",
                 "倪",    "汤",    "滕",    "殷",    "罗",    "毕",    "郝",    "邬",    "安",    "常",
                 "乐",    "于",    "时",    "傅",    "皮",    "卞",    "齐",    "康",    "伍",    "余",
                 "元",    "卜",    "顾",    "孟",    "平",    "黄",    "和",    "穆",    "萧",    "尹"
                 );
         var givenNames =  new Array(
                 "子璇", "淼", "国栋", "夫子", "瑞堂", "甜", "敏", "尚", "国贤", "贺祥", "晨涛",
                 "昊轩", "易轩", "益辰", "益帆", "益冉", "瑾春", "瑾昆", "春齐", "杨", "文昊",
                 "东东", "雄霖", "浩晨", "熙涵", "溶溶", "冰枫", "欣欣", "宜豪", "欣慧", "建政",
                 "美欣", "淑慧", "文轩", "文杰", "欣源", "忠林", "榕润", "欣汝", "慧嘉", "新建",
                 "建林", "亦菲", "林", "冰洁", "佳欣", "涵涵", "禹辰", "淳美", "泽惠", "伟洋",
                 "涵越", "润丽", "翔", "淑华", "晶莹", "凌晶", "苒溪", "雨涵", "嘉怡", "佳毅",
                 "子辰", "佳琪", "紫轩", "瑞辰", "昕蕊", "萌", "明远", "欣宜", "泽远", "欣怡",
                 "佳怡", "佳惠", "晨茜", "晨璐", "运昊", "汝鑫", "淑君", "晶滢", "润莎", "榕汕",
                 "佳钰", "佳玉", "晓庆", "一鸣", "语晨", "添池", "添昊", "雨泽", "雅晗", "雅涵",
                 "清妍", "诗悦", "嘉乐", "晨涵", "天赫", "玥傲", "佳昊", "天昊", "萌萌", "若萌"
                 );

         var i = parseInt(10 * Math.random())*10 + parseInt(10 * Math.random());
         var familyName = familyNames[i];

         var j = parseInt(10 * Math.random())*10 + parseInt(10 * Math.random());
         var givenName = givenNames[i];

         var name = familyName + givenName;
         var x = document.getElementsByName("client_name");
         for (var i = 0; i < x.length; i++) {
             var o = x[i];
             o.value = name;
         }

     }
//生成随机手机号
    function getMoble() {

        var prefixArray = new Array("130", "131", "132", "133", "135", "137", "138", "170", "187", "189");
        var i = parseInt(10 * Math.random());
        var prefix = prefixArray[i];

        for (var j = 0; j < 8; j++) {
            prefix = prefix + Math.floor(Math.random() * 10);
        }

        var x = document.getElementsByName("mobile_tel");
        for (var i = 0; i < x.length; i++) {
            var o = x[i];
            o.value = prefix;
        }
    }
// 生成随机身份证号
    function getId_no(){
       var coefficientArray = [ "7","9","10","5","8","4","2","1","6","3","7","9","10","5","8","4","2"];// 加权因子
       var lastNumberArray = [ "1","0","X","9","8","7","6","5","4","3","2"];// 校验码
       var address = "420101"; // 住址
       var birthday = "19810101"; // 生日
       var s = Math.floor(Math.random()*10).toString() + Math.floor(Math.random()*10).toString() + Math.floor(Math.random()*10).toString();
       var array = (address + birthday + s).split("");
       var total = 0;
       for(i in array){
            total = total + parseInt(array[i])*parseInt(coefficientArray[i]);
       }
       var lastNumber = lastNumberArray[parseInt(total%11)];
       var id_no_String = address + birthday + s + lastNumber;

        var x = document.getElementsByName("id_no");
        for (var i = 0; i < x.length; i++) {
            var o = x[i];
            o.value = id_no_String;
        }

    }
//生成随机银行卡号
    function getBank_account() {

        var bank_no = document.getElementById("bank_no_select").value;
        var prefix = "";
        switch (bank_no) {
              case "0102":
                   prefix = "622202";
              break;
              case "0103":
                   prefix = "622848";
              break;
              case "0105":
                   prefix = "622700";
              break;
              case "0301":
                   prefix = "622262";
              break;
              case "104":
                   prefix = "621661";
              break;
              case "0303":
                   prefix = "622666";
              break;
              case "305":
                   prefix = "622622";
              break;
              case "0306":
                   prefix = "622556";
              break;
              case "0308":
                   prefix = "622588";
              break;
              case "0410":
                   prefix = "622155";
              break;
              case "302":
                   prefix = "622689";
              break;
              case "304":
                   prefix = "622630";
              break;
              case "309":
                   prefix = "622908";
              break;
              case "310":
                   prefix = "621717";
              break;
              case "315":
                   prefix = "622323";
              break;
              case "316":
                   prefix = "622309";
              break;
              default:
        }

        for (var j = 0; j < 13; j++) {
            prefix = prefix + Math.floor(Math.random() * 10);
        }

        var x = document.getElementsByName("bank_no");
        for (var i = 0; i < x.length; i++) {
            var o = x[i];
            o.value = bank_no;
        }

        var y = document.getElementsByName("bank_account");
        for (var i = 0; i < y.length; i++) {
            var o = y[i];
            o.value = prefix;
        }
    }

js 随机生成姓名、手机号、身份证号、银行卡号的更多相关文章

  1. js验证真实姓名与身份证号,手机号

    最近的项目中用的需要调用实名认证的接口,实名认证接口价格相比短信而言高了不是几分钱,所以说调用实名认证的条件就要严格把关,因此用到js验证真实姓名与js验证身份证号. 进入正题 1.js验证真实姓名 ...

  2. Java随机生成18位身份证号

    package com.ihome.data; import java.text.SimpleDateFormat; import java.util.Calendar; import java.ut ...

  3. Java对姓名, 手机号, 身份证号, 地址进行脱敏

    替换几位就用几个*号 一.姓名 1, 脱敏规则: 只显示第一个汉字,比如李某某置换为李**, 李某置换为李* private static String desensitizedName(String ...

  4. selenium + python自动化测试unittest框架学习(七)随机生成姓名

    在自动化测试过程中经常要测试到添加用户的操作,每次都要输入中文,原本是找了十几个中文写成了列表,然后从列表中随机取出填入用户名文本框中,随着测试的增加,发现同名的人搜索出来一大堆,最后在网上找了个随机 ...

  5. JS随机生成不重复数据的代码分享

    JS随机生成不重复数据. 代码如下: <script> // 定义存放生成随机数的数组 var array=new Array(); // 循环N次生成随机数 for(var i = 0 ...

  6. js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr)

    js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr) 一.总结 1.|符号的使用:var reg=/^\d ...

  7. js验证姓名和身份证号

    js验证真实姓名,是用的unicode字符的来进行匹配,而中国人的姓名长度一般都是2-4,所以重复匹配{2,4}次 1.js验证真实姓名 1 var regName =/^[\u4e00-\u9fa5 ...

  8. js 随机生成信用卡号

    本文实例讲述了JavaScript随机生成信用卡卡号的方法.分享给大家供大家参考.具体分析如下: 这段JS代码根据信用卡卡号产生规则随机生成信用卡卡号,是可以通过验证的,仅供学习参考,请不要用于非法用 ...

  9. js随机生成验证码及其颜色

    今天迎来了2018年第一场雪,这个美好的日子,总的写点什么纪念一下,在这里写了一个在js中使用Math.random()函数,随机生成四位数的验证码及其验证码换颜色. js代码如下: var arra ...

随机推荐

  1. Android随笔之——模拟按键操作的几种方式

    前几天转过一篇Android上模拟按键操作.触屏事件的博客,昨天又去找了百度.谷歌了一下,写了一点简单的测试代码,留待不时之需.有需要看之前转载的那篇博客的请看这里→_→转:Android随笔之——使 ...

  2. Last-Modified、If-Modified-Since 实现缓存和 OutputCache 的区别

    先梳理三个概念: OutputCache:页面输出缓存,一般 ASP.NET 应用程序会用到. Last-Modified:Http 响应头(Http Reponse Header),由服务器发给客户 ...

  3. EntityFramework 7 开发纪录

    博文目录: 暂时开发模式 Code First 具体体现 DbContext 配置 Entity 映射关联配置 Migration 问题纪录(已解决) 之前的一篇博文:EF7 Code First O ...

  4. T-Sql(五)xml操作

    t-sql中的xml操作在我们平时做项目的过程中用的很少,因为我们处理的数据量很少,除非一些用到xml的地方,t-sql中xml操作一般用在数据量很大,性能优化的地方,当然我在平时做项目的时候也是没用 ...

  5. 从零开始构建 Wijmo & Angular 2 小应用

    中秋之际,Angular 团队发布 Angular 2 正式版,一款不错的图表控件Wijmo当天宣布支持 . Angular 2移除和替代了 Angular 1.X 中的 directives, co ...

  6. Stackoverflow/dapper的Dapper-Extensions用法(二)

    之前翻译了Dapper-Extensions项目首页的readme.md,大家应该对这个类库的使用有一些了解了吧,接下来是wiki的文档翻译,主要提到了AutoClassMapper.KeyTypes ...

  7. 1Z0-053 争议题目解析681

    1Z0-053 争议题目解析681 考试科目:1Z0-053 题库版本:V13.02 题库中原题为: 681.The environmental variable ORACLE-BASE is set ...

  8. 探秘Tomcat——连接篇

    前两篇我们分别粗线条和细粒度的讲解了tomcat的服务是如何启动以及连接器Connector和容器Container又分别是如何被启动的. 本篇我们主要侧重tomcat中server.service以 ...

  9. DotNet程序集解析

    在.NET Framework框架中,程序集是重用.安全性以及版本控制的最小单元.程序集的定义为:程序集是一个或多个类型定义文件及资源文件的集合.程序集主要包含:PE/COFF,CLR头,元数据,清单 ...

  10. PHP封装

       封装 把成员方法和成员属性封装到类中,隐藏属性和方法实现的细节,通过public.protected.private等限定类成员的访问权限,数据被保护在内部,只通过被授权的成员方法才可以操作,尽 ...