基于jquery拆分姓名的方法[纯javascript版]2014-04-29 csdn博客 风柏杨之前已经分享过一个在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];}});