姓名生成器

版权声明:***本文为博主原创文章,未经博主允许不得转载。*** https://blog.csdn.net/rrrrrr123rrr/article/details/79635853

姓名生成器

  • NameUtil
class NameUtil {
  constructor() {
    this.nameCode = '鑫正涵琛妍芸露楠薇锦彤采初美冬婧桐莲彩洁'
    +'呈菡怡冰雯雪茜优静萱林馨鹤梅娜璐曼彬芳颖韵曦蔚桂月梦琪蕾'
    +'依碧枫欣杉丽祥雅欢婷舒心紫芙慧梓香玥菲璟茹昭岚玲云华阳弦'
    +'莉明珊雨蓓旭钰柔敏家凡花媛歆沛姿妮珍琬彦倩玉柏橘昕桃栀克'
    +'帆俊惠漫芝寒诗春淑凌珠灵可格璇函晨嘉鸿瑶帛琳文洲娅霞颜康'
    +'卓星礼远帝裕腾震骏加强运杞良梁逸禧辰佳子栋博年振荣国钊喆'
    +'睿泽允邦骞哲皓晖福濡佑然升树祯贤成槐锐芃驰凯韦信宇鹏盛晓'
    +'翰海休浩诚辞轩奇潍烁勇铭平瑞仕谛翱伟安延锋寅起谷稷胤涛弘'
    +'侠峰材爵楷尧炳乘蔓桀恒桓日坤龙锟天郁吉暄澄中斌杰祜权畅德'
  }

  get(){
    let length = [3,2,4,5][parseInt(Math.random()*Math.random()*3)]
    let name = []
    while(length--){
      name.push(this.nameCode[parseInt(Math.random()*this.nameCode.length)])
    }
    return name.join('')
  }
}
  • Test
var name = new NameUtil()
var num = 10000
var names = []
while (num--) {
  names.push(name.get())
}

console.log(names.join(' '));
var total = names.length
console.log('生成数量:'+names.length);
names = [...new Set(names)]
var unique = names.length
console.log('去除重名后的数量:'+names.length);
console.log('重名率:'+((total-unique)/total*100).toFixed(3)+'%');
  • Result
PS C:\Users\y\Desktop\SyncProject> node .\1姓名生成器测试.js
哲信浩 坤德 轩烁成 玉芃钊 彤碧姿 树淑梓 舒柏杰 冬辞潍 良睿盛 哲萱皓 芙函 林桐晖 曦颜 诗呈蕾 春妮树 礼彩成 奇国蔚文 琬帆休 侠杉凌 喆诗翱 允梁 芳碧弘 楠鸿柔 澄翰 锋尧 鹏 安 良颜 珍皓芙 ......... 材玲 郁楷玲 蕾琪琬 桂珊丽 谛天 琪柔震 峰冬 中强慧坤 慧桐 颜芃昭 震龙 婷福权 华鸿桐 莉翰震 韵哲月 礼昕桓 斌钊 锟涛信 安玥中 琳珊 楷 莲涵 信珍彬 浩侠 芳媛 凯淑升 芙谛晓 勇诚祯 彦歆芝 雅灵桐 郁凌 梅帝芃 祥然 正翱 菲枫 佳祯奇 林驰驰 华柏怡 珍鹤 霞恒舒 浩妍 杞芙 弦薇然 涛婧心 喆帝博 月岚
生成数量:10000
去除重名后的数量:9953
重名率:0.470%

猜你喜欢

转载自blog.csdn.net/rrrrrr123rrr/article/details/79635853