基於jquery實現拆分姓名的方法(純JS版)

來源:互聯網
上載者:User

之前已經分享過一個在dom中使用者輸入姓名後自動用js拆分成姓與名到表單中的jquery外掛程式,由於項目的需要,需要一個在用戶端自動拆分,但不需要將拆分結果呈現給使用者的方法,所以又寫了一個獨立的方法,貼出來跟大家分享交流
複製代碼 代碼如下:
$.extend({
splitName: function(fullname){
var hyphenated = ['歐陽','太史','端木','上官','司馬','東方','獨孤','南宮','万俟','聞人','夏侯','諸葛','尉遲','公羊','赫連','澹臺','皇甫',
'宗政','濮陽','公冶','太叔','申屠','公孫','慕容','仲孫','鐘離','長孫','宇文','城池','司徒','鮮於','司空','汝嫣','閭丘','子車','亓官',
'司寇','巫馬','公西','顓孫','壤駟','公良','漆雕','樂正','宰父','穀梁','拓跋','夾穀','軒轅','令狐','段幹','百裡','呼延','東郭','南門',
'羊舌','微生','公戶','公玉','公儀','梁丘','公仲','公上','公門','公山','公堅','左丘','公伯','西門','公祖','第五','公乘','貫丘','公皙',
'南榮','東裡','東宮','仲長','子書','子桑','即墨','達奚','褚師'];
var vLength = fullname.length;
var lastname = '', firstname = '';//前為姓,後為名
if(vLength > 2){
var preTwoWords = fullname.substr(0, 2);//取命名的前兩個字,看是否在複姓庫中
if($.inArray(preTwoWords, hyphenated) > -1){
lastname = preTwoWords;
firstname = fullname.substr(2);
}else{
lastname = fullname.substr(0, 1);
firstname = fullname.substr(1);
}
}else if(vLength == 2){//全名只有兩個字時,以前一個為姓,後一下為名
lastname = fullname.substr(0, 1);
firstname = fullname.substr(1);
}else{
lastname = fullname;
}
return [lastname, firstname];
}
});

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.