gogoWebsite

JavaScript randomly generates email, mobile phone number, name, date, and password for database use

Updated to 7 hours ago

In the training, I accidentally became interested in generating random data, so I made a script to generate random data by myself.
Some source codes have been referenced. The reason why I don’t use them directly is that I don’t want to use them npm and shit every time I use them. A simple script is enough.

var phonePrefixs = ["134", "135", "136", "137", "138", "139", "150", "151", 
"152", "157", "158", "159", "130","131", "132", "155", "156", "133", "153"];
var numeric = "0123456789";

var lowerCase = "abcdefghijklmnopqrstuvwxyz"
var upperCase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

var email_suffix = ["@", "@", "@", "@", 
    "@", "@","@", "@", "@", "@", 
	"@", "@", "@", "@", "@", "@",
	"@", "@"];


// Randomly generated numbers in the range of (min,max)
function randomInt(min, max) {
    return min + Math.floor(Math.random() * (max-min+1))
}

// Randomly generate a sequence of characters with length len from the list value
function randomSequence(len, list) {
    if (len <= 1) { 
        len = 1; 
    }
    var s = "";
    var n = list.length;
    if (typeof list === "string") {
        while (len-- > 0 ){      
            s += list.charAt(Math.random() * n)
        }
    } else if (list instanceof Array) {
        while (len-- > 0 ){      
            s += list[ Math.floor(Math.random() * n) ]
        }
    }
    return s;
}


//Remember the name
Array.prototype.removeDup = function () {
  let result = []
  let obj = {}

  for (let i = 0; i < this.length; i++) {
    if (!obj[this[i]]) {
      result.push(this[i])
      obj[this[i]] = 1
    }
  }

  return result
}

//Randomly generate names
function getRandomName () {
  let firstNames = new Array(
    'Zhao', 'money', 'Sun', 'plum', 'week', 'Wu', 'Zheng', 'king', 'Feng', 'List', 'Current', 'guard', 'Jiang', 'Shen', 'Han', 'Yang',
    'Zhu', 'Qin', 'especially', 'May', 'what', 'Lu', 'Shi', 'open', 'hole', 'Cao', 'strict', 'magnificent', 'gold', 'Wei', 'pottery', 'ginger',
    'Qi', 'Thanks', 'Zou', 'Metaphor', 'Bai', 'water', 'sinus', 'chapter', 'cloud', 'Su', 'Pan', 'Ge', 'Xi', 'Fan', 'Peng', 'Lang',
    'Lu', 'Wei', 'Chang', 'horse', 'Seedling', 'phoenix', 'flower', 'square', 'Yu', 'appoint', 'Yuan', 'willow', 'Feng', 'abalone', 'history', 'Tang',
    'fee', 'inexpensive', 'Cen', 'Xue', 'thunder', 'Congratulations', 'Ni', 'Soup', 'Teng', 'Yin', 'Ro', 'complete', 'Hao', 'Wu', 'install', 'often',
    'happy', 'At', 'hour', 'Fu', 'Skin', 'Bian', 'together', 'Kang', 'Wu', 'Remain', 'Yuan', 'predict', 'Gu', 'Meng', 'flat', 'yellow',
    'and', 'Mu', 'Xiao', 'Yin', 'Yao', 'Shao', 'Zhan', 'Wang', 'Qi', 'hair', 'Yu', 'Di', 'rice', 'cowry', 'bright', 'Zang',
    'count', 'Fu', 'become', 'Wear', 'talk', 'Song', 'Mao', 'Pang', 'Bear', 'discipline', 'Shu', 'Qu', 'item', 'wish', 'Dong', 'Bang',
    'Du', 'Ruan', 'blue', 'Fu', 'Seat', 'season', 'numb', 'powerful', 'Jia', 'road', 'Lou', 'Danger', 'River', 'child', 'Yan', 'Guo',
    'plum', 'Sheng', 'Forest', 'carry', 'Zhong', 'Xu', 'mound', 'Luo', 'high', 'summer', 'Cai', 'field', 'Fan', 'Hu', 'Ling', 'Ho',
    'Yu', 'Ten thousand', 'branch', 'Ke', 'Zan', 'Tube', 'Lu', 'Mo', 'through', 'house', 'fur', 'Miao', 'Dry', 'untie', 'answer', 'Zong',
    'Man', 'Present', 'Ben', 'Deng', 'Down', 'one', 'Hangzhou', 'flood', 'Bag', 'various', 'Left', 'stone', 'Choi', 'lucky', 'button', 'Gong',
    'Procedure', 'Ji', 'Xing', 'slip', 'Pei', 'land', 'Rong', 'Weng', 'Xun', 'sheep', 'at', 'benefit', 'Zhen', 'Qu', 'Home', 'seal up',
    'Ri', 'Yi', 'Current', 'Jin', 'Gi', 'Bing', 'Mi', 'loose', 'well', 'part', 'rich', 'witch', 'Wu', 'Jiao', 'bar', 'bow',
    'Married', 'Qi', 'Mountain', 'valley', 'car', 'Hou', 'Mi', 'Peng', 'Complete', 'Xi', 'class', 'Yang', 'Autumn', 'Zhong', 'Ye', 'palace',
    'rather', 'hatred', 'Luan', 'Burgward', 'sweet', 'incline', 'Li', 'Rong', 'Ancestor', 'Wu', 'symbol', 'Liu', 'scene', 'Jan', 'bundle', 'dragon',
    'leaf', 'fortunate', 'manage', 'Shao', 'Gao', 'Li', 'thistle', 'Thin', 'print', 'Stay', 'white', 'Well', 'Pu', 'Tai', 'from', 'E',
    'Search', 'salty', 'membership', 'rely', 'Zhuo', 'Lin', 'Slaughter', '*n', 'Pool', 'Joe', 'Negative', 'Down', 'Xu', 'able', 'Cang', 'pair',
    'smell', 'Xin', 'party', 'Zhai', 'Tan', 'tribute', 'labor', 'On', 'Ji', 'state', 'help', 'block', 'Ran', 'slaughter', 'Li', 'Yong',
    'High', 'South', 'mulberry', 'Gui', 'Pu', 'ox', 'life', 'Pass', 'side', 'Hu', 'Yan', 'Hebei', 'Ji', 'Pu', 'still', 'Agricultural',
    'temperature', 'Don't', 'village', 'Yan', 'firewood', 'Qu', 'Yan', 'charge', 'Mu', 'even', 'Ru', 'habit', 'official', 'Ai', 'fish', 'Allow',
    'Towards', 'antiquity', 'easy', 'Be careful', 'Ge', 'Liu', 'Yu', 'end', 'and', 'House', 'Heng', 'step', 'All', 'Geng', 'Full', 'Hong',
    'Kuang', 'country', 'arts', 'Kou', 'wide', 'Lu', 'Que', 'East', 'Europe', 'Shu', 'fertile', 'profit', 'Vi', 'cross', 'Kui', 'Long',
    'division', 'Gong', 'leaf', 'Nie', 'Chao', 'hook', 'Ao', 'melt', 'cold', 'Heart', 'pungent', 'Kan', 'That', 'simple', 'Rao', 'null',
    'ever', 'not', 'sand', 'What', 'keep', 'Ju', 'Beef', 'rich', 'nest', 'close', 'Kuai', 'Mutually', 'check', 'back', 'Jing', 'red',
    'tour', 'Zhu', 'right', 'Everything', 'build', 'beneficial', 'Huan', 'male', 'Jian', 'Superior', 'Jin', 'Chu', 'Yan', 'Law', 'Yu', 'Yan',
    'Du', 'Qin', 'Yue', 'handsome', 'green', 'Kang', 'condition', 'back', 'have', 'Piano', 'Return', 'ocean', 'ink', 'ha', 'Qiao', 'install',
    'Year', 'like', 'Positive', 'Tong', 'business', 'Mu', 'She', 'Number', 'Bor', 'reward', 'Wanqi', 'Sima', 'Shangguan', 'Ouyang', 'Xiahou',
    'Zhuge', 'famous person', 'East', 'Helian', 'Huangfu', 'Yuchi', 'ram', 'Dan Tai', 'Pongye', 'Zong Zheng', 'Puyang', 'Chunyu',
    'Shanyu', 'Uncle Tai', 'Shentu', 'Gongsun', 'Zhongsun', 'Xuanyuan', 'Linghu', 'Zhongli', 'Yuwen', 'Changsun', 'Murong', 'Fresh',
    'Luqiu', 'Situ', 'Sikong', 'Not official', 'Siko', 'Ship car', 'Microgenesis', 'Zhuansun', 'Dunmu', 'Wuma', 'Kongxi', 'Labor sculpture',
    'Le Zheng', 'Rang Si', 'Praise', 'Tuoba', 'Jiagu', 'Zao Father', 'Guliang', 'Duan Gan', 'Baili', 'Dongguo', 'South Gate', 'Huyan',
    'Sheep tongue', 'Liangqiu', 'Zuoqiu', 'East Gate', 'Ximen', 'Nangong'
  )

  let lastNames = new Array(
    'Zixuan', 'Miao', 'Guodong', 'Teacher', 'Rui Tang', 'sweet', 'Mind', 'still', 'Guoxian', 'He Xiang', 'Chen Tao',
    'Haoxuan', 'Yi Xuan', 'Yichen', 'Yifan', 'Yiran', 'Jinchun', 'Jinkun', 'Chunqi', 'Yang', 'Wen Hao',
    'Things', 'Xionglin', 'Haochen', 'Xihan', 'Solution', 'Ice Maple', 'Xinxin', 'Yihao', 'Xinhui', 'Creation of the Government',
    'Meixin', 'Shuhui', 'Wenxuan', 'Wenjie', 'Xinyuan', 'Zhonglin', 'Rongrun', 'Xinru', 'Hui Jia', 'New',
    'Kanlin', 'Yi Fei', 'Forest', 'Bingjie', 'Jiaxin', 'Hanhan', 'Yu Chen', 'Chunmei', 'Zehui', 'Weiyang',
    'Hanyue', 'Runli', 'Xiang', 'Shuhua', 'Crystal', 'Ling Jing', 'Ranxi', 'Yuhan', 'Jiayi', 'Jiayi',
    'Zi Chen', 'Jiaqi', 'Zixuan', 'Ruichen', 'Xinrui', 'Cute', 'Mingyuan', 'Xinyi', 'Zeyuan', 'Xinyi',
    'Jiayi', 'Jiahui', 'Chenxi', 'Chenlu', 'Yunhao', 'Ruxin', 'Shujun', 'Jingying', 'Runsha', 'Rongshan',
    'Jia Yu', 'Jia Yu', 'Xiaoqing', 'Yiming', 'Yuchen', 'Ingredient', 'Tianhao', 'Yueze', 'Yahan', 'Yahan',
    'Qingyan', 'Shiyue', 'Jiale', 'Chen Han', 'Tianhe', 'Yue Ao', 'Jiahao', 'Tianhao', 'Meng Meng', 'Ruomeng',
    'Qiubai', 'south wind', 'Drunk Mountain', 'Chutong', 'Ninghai', 'Purple Text', 'Ling Qing', 'Fragrant Flower', 'Yaqin', 'Aoan',
    'Apride', 'First Butterfly', 'Search for Peach', 'Daiqin', 'Poetry Frost', 'Chun Cypress', 'Green Summer', 'Bi Ling', 'Poetry Willow', 'Summer Willow',
    'Caibai', 'Mumei', 'Le', 'Dongling', 'Zi', 'Wanning', 'Rain and Snow', 'Yi Zhen', 'Anhe', 'Jingzhu',
    'Flying Snow', 'Shelan', 'Ya Shuang', 'Congrong', 'Lengxue', 'Jing Qiao', 'Tris', 'Micui', 'Fan Bai', 'Le Rong',
    'Welcome to the wave', 'Danyan', 'Dream', 'Book Double', 'Missing Tao', 'Ye Tian', 'Haitao', 'Qingxiang', 'Hate the Wind', 'Anjun',
    'Feeling', 'Chunan', 'Autumn Butterfly', 'Qianyi', 'Anlu', 'Sirui', 'Mountain Goose', 'Youling', 'Scented Dew', 'Xiaolan',
    'Hanyao', 'Qiu Rou', 'Siling', 'Drunk Willow', 'Yihan', 'Welcome summer', 'Xiang Xue', 'Canlian', 'Yidan', 'Yin',
    'Rubai', 'Yanling', 'Ningzhu', 'Wanbai', 'Churu', 'Nan Lei', 'Shuxuan', 'Dream Huai', 'Parinet', 'Nanqin',
    'Green Sea', 'Peer', 'Xiaoyao', 'Listening to the Spring', 'Yi Qiao', 'Mian Yun', 'Xiaoling', 'Jingfeng', 'Xia Rong', 'Ru Nan',
    'Young silk', 'Qiubai', 'Bing', 'Changbutterfly', 'Zixue', 'Remember double', 'Ignore the truth', 'Manhan', 'Fan Frost', 'Bai Hui',
    'Yushan', 'Leng Zhen', 'Qiucui', 'Summer Willow', 'As it', 'Impression of the South', 'Shuyi', 'Quetao', 'Shi Yao', 'Ruman',
    'Ask Liu', 'Fragrant plum', 'Peach', 'Youhan', 'Spring Green', 'Drunk Butterfly', 'Yi Green', 'Shishan', 'Listening to Qin', 'New',
    'Bohan', 'Bochao', 'Caizhe', 'Talent', 'Shenghe', 'Sheng Hong', 'Hao Cang', 'Haohao', 'Haokong', 'Haoqian',
    'Haoran', 'Haoran', 'Haotian', 'Haoyan', 'Haoying', 'Haobo', 'Haobo', 'Haochu', 'vast', 'Unbundance',
    'Horrible', 'Hao Song', 'Haoguang', 'Haoqing', 'The vast', 'Haohao', 'Hao Ling', 'Haokuang', 'Horizon', 'Haoman',
    'Haomiao', 'Hao Miao', 'Haomiao', 'noble spirit', 'Haoran', 'Haorang', 'Haorang', 'Haosi', 'Haoyan', 'Haoxuan',
    'kind', 'Han', 'Hechang', 'Xiangdong', 'Haowei', 'Chuqiao', 'Zhilin', 'Haojie', 'Yan Cheng', 'Sizhe',
    'Jingxin', 'Chu Huai', 'Jizhi', 'Zhaowang', 'Junze', 'Sub-center', 'Yu Rui', 'Jialei', 'Hongxiang', 'Mingxuan',
    'Chess', 'Anecdote', 'Zhaoyi', 'Zhenxiang', 'Zexin', 'Rui Jun', 'Haoyi', 'Hongming', 'Zhongxian', 'Jinhui',
    'Yuanyi', 'Peisheng', 'Yu Jun', 'Zibo', 'Yu Lin', 'Shengyou', 'Juntao', 'Haoqi', 'Lehang', 'Zekai',
    'Janing', 'Jing Xuan', 'Weining', 'Create a new', 'Yuhuai', 'Hao Xuan', 'Cunjie', 'Junming', 'Yiming', 'Tang Yao',
    'Xuanning', 'Ship', 'Yuexin', 'Zijie', 'Xiao Yu', 'Hongtao', 'Yi Tian', 'Guangjia', 'Lu Ming', 'Zhiqing',
    'Lian Bin', 'Jing Zhi', 'Meng Xin', 'Yiran', 'Wenyuan', 'Yi Xun', 'Hanyu', 'Hanri', 'Hanchang', 'Handi',
    'Haoqiong', 'Hanliang', 'Hanren', 'Incest', 'Junke', 'Zhipeng', 'Chengyu', 'Book and ink', 'Junyi', 'Hao Miao',
    'Chenshui', 'Commendation', 'Shixian', 'Feet', 'Yichen', 'Dianbin', 'Xiao Hong', 'Chen Lu', 'Lan Hong', 'Jingbo',
    'Consultation', 'Cultivate virtue', 'Jinghui', 'Yuanzhi', 'Zhiyi', 'Hongfeng', 'Si Fan', 'Yi Xuan', 'Taihe', 'Shanyu',
    'Jia Hao', 'Jinyuan', 'Hao Yan', 'Xiao Bin', 'Yuesheng', 'Fragrant sound', 'Ye Ning', 'Hao Yong', 'Renxian', 'Shangran',
    'Yi Lin', 'Yuehong', 'Jianlin', 'Honghao', 'Junjie', 'Keshun', 'Jingle', 'Shun Yoshi', 'Haicang', 'Jieming',
    'Flying', 'Jie Chen', 'Yujie', 'Xiqing', 'Yu Hong', 'Yi Jin', 'Mu Chen', 'Futong', 'Minchi', 'Long Ning',
    'Wenhong', 'Yifan', 'Guangchen', 'Chentao', 'Jiaqi', 'Yajun', 'Rui Ming', 'Haoxuan', 'Cheng Tian', 'Zibing',
    'Aikon', 'Ru Yu', 'Guanyu', 'Sorry', 'Yonghao', 'Longhua', 'Zhaoyan', 'Qiwen', 'Yuexin', 'Yu Jin',
    'Ang Jia', 'Haohao', 'Yutao', 'Rui Hent', 'Yong Translation', 'Hongbin', 'Haolin', 'Yibin', 'Hong Hao', 'Feiyue',
    'Ruijue', '?Xiaotong', 'Rui Hong', 'Rong Bing', 'Yihao', 'Kaiyan', 'Hongyi', 'Haiying', 'Haoru', 'Zi Ming',
    'Shengzhao', 'Blue Seal', 'Chenyuan', 'Yuhan', 'Inksea', 'Wensha', 'Tarui', 'Yanhong', 'Yiwei', 'Qingyu',
    'Ning Yi', 'Dong Rui', 'Jinchang', 'Ye Ning', 'Chang Quan', 'National Research', 'Deyun', 'Xiaoqing', 'Jiayang', 'Kaiwei',
    'Really', 'Minyun', 'Xinye', 'Liwei', 'Shishuai', 'Zhi Chun', 'Ye Fei', 'Xingyuan', 'Zi Mo', 'Chengxin',
    'Yexuan', 'Yueqin', 'Chenjin', 'Bohong', 'Yu Meng', 'Yuxuan', 'Shaojun', 'Ruichang', 'Hongqian', 'Haowei',
    'Rongjin', 'Yunhang', 'Yuan Jia', 'Star', 'Jing Tao', 'Minghong', 'Deben', 'Xiang Hui', 'Ki Xiang', 'Jiayi',
    'Xinpeng', 'Yu Quan', 'Zerong', 'Hongliang', 'Shangting', 'Xuanzi', 'Fujin', 'Bin Kai', 'Yin Fei', 'Yujun',
    'Yangping', 'Yujie', 'Qinzhao', 'Independence', 'Yuecheng', 'Honghai', 'Hanchang', 'Kwangho', 'Lingyi', 'Haohao',
    'Rui Jin', 'Yi Ze', 'Jun Kang', 'Family text', 'Chenyuan', 'Yuyang', 'Yu Hong', 'Zi Zhen', 'Yang Jia', 'Hengzhang',
    'Yuyuan', 'Zheyi', 'Yijiang', 'Fengyuan', 'Xuedong', 'Qiyan', 'Haocai', 'kind', 'Red Word', 'Rich',
    'Songyuan', 'Xin Win', 'Zi Hong', 'Bomin', 'Mingyu', 'Hao Shuo', 'Yuen', 'Yuru', 'Chunyan', 'Result',
    'Binbin', 'Flying', 'Honglu', 'Haohong'
  )

  lastNames = lastNames.removeDup()

  let firstLength = firstNames.length
  let lastLength = lastNames.length

  let i = parseInt(Math.random() * firstLength)
  let j = parseInt(Math.random() * lastLength)
  let name = firstNames[i] + lastNames[j]

  return name
}

//Randomly generate email
function getRandomEmail () {
    var opt = numeric + lowerCase + upperCase
    return randomSequence( randomInt(4, 10), opt) + randomSequence(1,email_suffix);
}

// Randomly generate mobile phone number
function getRandomPhone(){
    return randomSequence(1,phonePrefixs) + randomSequence(8,numeric);
}

//Randomly generate password
function getRandomPassWord() {
    var opt = numeric + lowerCase + upperCase
    return randomSequence(randomInt(6, 18), opt)
}

//Random generation date
function getRandomDate(min, max) { // min, max
    min = min === undefined ? new Date(0) : min
    max = max === undefined ? new Date() : max
    var res = new Date(Math.random() * (max.getTime() - min.getTime()))
    return res.getFullYear() + "-" + res.getMonth() + "-" + res.getDay();
}



for (let i = 0; i < 10; i++) {
  console.log(getRandomName(), getRandomEmail(),getRandomPhone(),getRandomPassWord(), getRandomDate());
}