基于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 相关文章推荐
解析JavaScript中的字符串类型与字符编码支持
Jun 24 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
Nov 07 Javascript
微信小程序 this和that详解及简单实例
Feb 13 Javascript
原生JS实现N级菜单的代码
May 21 Javascript
JavaScript之Map和Set_动力节点Java学院整理
Jun 29 Javascript
js防刷新的倒计时代码 js倒计时代码
Sep 06 Javascript
React.js绑定this的5种方法(小结)
Jun 05 Javascript
详解Node.js中path模块的resolve()和join()方法的区别
Oct 29 Javascript
微信小程序使用component自定义toast弹窗效果
Nov 27 Javascript
layui数据表格重载实现往后台传参
Nov 15 Javascript
Vue+tracking.js 实现前端人脸检测功能
Apr 16 Javascript
element中table高度自适应的实现
Oct 21 Javascript
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
收音机发烧友应当熟知的100条知识
2021/03/02 无线电
增加反向链接的101个方法 站长推荐
2007/01/31 PHP
PHP IF ELSE简化/三元一次式的使用
2011/08/22 PHP
php调用shell的方法
2014/11/05 PHP
浅谈php命令行用法
2015/02/04 PHP
Yii2简单实现多语言配置的方法
2016/07/23 PHP
jQuery Ajax之$.get()方法和$.post()方法
2009/10/12 Javascript
IE iframe的onload方法分析小结
2010/01/07 Javascript
Jquery实现Div上下移动示例
2014/04/23 Javascript
jquery查找tr td 示例模拟
2014/05/08 Javascript
jQuery点缩略图弹出层显示大图片
2015/02/13 Javascript
jQuery+css实现非常漂亮的水平导航菜单效果
2016/07/27 Javascript
Web打印解决方案之普通报表打印功能
2016/08/29 Javascript
详解http访问解析流程原理
2017/10/18 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
2018/01/25 Javascript
Vue框架TypeScript装饰器使用指南小结
2019/02/18 Javascript
详解Python中表达式i += x与i = i + x是否等价
2017/02/08 Python
Python常见数据类型转换操作示例
2019/05/08 Python
Python代码中如何读取键盘录入的值
2020/05/27 Python
python字符串的index和find的区别详解
2020/06/20 Python
python中加背景音乐如何操作
2020/07/19 Python
Kipling凯浦林美国官网:世界著名时尚休闲包袋品牌
2016/08/24 全球购物
精油和天然健康美容产品:Art Naturals
2018/01/27 全球购物
受希腊女神灵感的晚礼服、鸡尾酒礼服和婚纱:THEIA
2018/04/15 全球购物
Maison Lab荷兰:名牌Outlet购物
2018/08/10 全球购物
Wedgwood英国官方网站:英式精致骨瓷餐具、礼品与生活精品,源于1759年
2019/09/02 全球购物
JSF如何进行表格处理及取值
2012/08/06 面试题
物流专业大学生求职信范文
2013/10/28 职场文书
买房子个人收入证明
2014/01/16 职场文书
单位成立周年感言
2014/01/26 职场文书
中级会计职业生涯规划书
2014/03/01 职场文书
会计专业毕业生求职信
2014/07/04 职场文书
企业团队精神心得体会
2016/01/19 职场文书
Python time库的时间时钟处理
2021/05/02 Python
MySQL数据库压缩版本安装与配置详细教程
2021/05/21 MySQL
解决mysql:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO/YES)
2021/06/26 MySQL