基于jquery实现拆分姓名的方法(纯JS版)


Posted in Javascript onMay 08, 2013

之前已经分享过一个在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]; 
} 
});
Javascript 相关文章推荐
js的闭包的一个示例说明
Nov 18 Javascript
JS检测输入字符是否包含非法字符的示例代码
Feb 11 Javascript
简介JavaScript中toTimeString()方法的使用
Jun 12 Javascript
浅谈Javascript数组(推荐)
May 17 Javascript
谈谈JS中常遇到的浏览器兼容问题和解决方法
Dec 17 Javascript
BootStrap Table前台和后台分页对JSON格式的要求
Jun 28 Javascript
jquery animate动画持续运动的实例
Nov 29 jQuery
Angular2使用vscode断点调试ts文件的方法
Dec 13 Javascript
jquery实现左右轮播切换效果
Jan 01 jQuery
vue-router路由模式详解(小结)
Aug 26 Javascript
改变layer confirm弹窗按钮的颜色方法
Sep 12 Javascript
vue图片裁剪插件vue-cropper使用方法详解
Dec 16 Vue.js
jQuery cdn使用介绍
May 08 #Javascript
不用锚点也可以平滑滚动到页面的指定位置实现代码
May 08 #Javascript
jquery实现图片左右间隔滚动特效(可自动播放)
May 08 #Javascript
jQuery中fadeIn、fadeOut、fadeTo的使用方法(图片显示与隐藏)
May 08 #Javascript
jquery插件validate验证的小例子
May 08 #Javascript
jQuery ui插件的使用方法代码实例
May 08 #Javascript
js模拟select下拉菜单控件的代码
May 08 #Javascript
You might like
php sprintf()函数让你的sql操作更安全
2008/07/23 PHP
PHP实现异步调用方法研究与分享
2011/10/27 PHP
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
2011/11/07 PHP
php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例
2014/07/18 PHP
Yii2框架dropDownList下拉菜单用法实例分析
2016/07/18 PHP
javascript编程起步(第二课)
2007/02/27 Javascript
JS 用6N±1法求素数 实例教程
2009/10/20 Javascript
Extjs中ComboBox加载并赋初值的实现方法
2012/03/22 Javascript
jquery图片不完全按比例自动缩小的简单代码
2013/07/29 Javascript
输入框过滤非数字的js代码
2014/09/18 Javascript
JavaScript中的acos()方法使用详解
2015/06/14 Javascript
超漂亮的jQuery图片轮播特效
2015/11/24 Javascript
vue插件vue-resource的使用笔记(小结)
2017/08/04 Javascript
JavaScript实现简单的隐藏式侧边栏功能示例
2018/08/31 Javascript
vue实现打印功能的两种方法
2018/09/07 Javascript
vue-cli 3.x 修改dist路径的方法
2018/09/19 Javascript
[05:46]DOTA2英雄梦之声_第18期_陈
2014/06/20 DOTA
[55:04]海涛DOTA2死魂复燃6.82版本介绍
2014/09/28 DOTA
netbeans7安装python插件的方法图解
2013/12/24 Python
Python程序设计入门(3)数组的使用
2014/06/16 Python
Python中文编码那些事
2014/06/25 Python
python自定义类并使用的方法
2015/05/07 Python
对python判断是否回文数的实例详解
2019/02/08 Python
PyQt5根据控件Id获取控件对象的方法
2019/06/25 Python
Python入门Anaconda和Pycharm的安装和配置详解
2019/07/16 Python
python3 map函数和filter函数详解
2019/08/26 Python
pytorch实现Tensor变量之间的转换
2020/02/17 Python
python中return如何写
2020/06/18 Python
python开发一款翻译工具
2020/10/10 Python
python 进程池pool使用详解
2020/10/15 Python
Python模拟键盘输入自动登录TGP
2020/11/27 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
2020/12/17 Python
英国口碑最好的的维他命胶囊品牌:Myvitamins(有中文站)
2016/12/03 全球购物
应届毕业生个人求职自荐信
2014/01/06 职场文书
银行自荐信范文
2015/03/25 职场文书
python3读取文件指定行的三种方法
2021/05/24 Python