基于jquery拆分姓名的方法[纯JS版]

之前已经分享过一个在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];  
    }  
});
值: ,如果能帮到您,我会感到非常荣幸.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值