姓名生成器

姓名生成器

  • 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%
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章