基于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 相关文章推荐
extJs 常用到的增,删,改,查操作代码
Dec 28 Javascript
Javascript Object.extend
May 18 Javascript
Javascript中产生固定结果的函数优化技巧
Jan 16 Javascript
使用jquery实现图文切换效果另加特效
Jan 20 Javascript
由点击页面其它地方隐藏div所想到的jQuery的delegate
Aug 29 Javascript
javascript作用域问题实例分析
Jul 13 Javascript
JS实现网页游戏中滑块响应鼠标点击移动效果
Oct 19 Javascript
jQuery防止重复绑定事件的解决方法
May 14 Javascript
JavaScript中localStorage对象存储方式实例分析
Jan 12 Javascript
原生JS实现层叠轮播图
May 17 Javascript
MVVM框架下实现分页功能示例
Jun 14 Javascript
JavaScript进阶(四)原型与原型链用法实例分析
May 09 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
php文件压缩之PHPZip类用法实例
2015/06/18 PHP
解析WordPress中控制用户登陆和判断用户登陆的PHP函数
2016/03/01 PHP
解决Yii2邮件发送结果返回成功,但接收不到邮件的问题
2017/05/23 PHP
java script编程起步(第三课)
2007/01/10 Javascript
DOM 脚本编程中的兄弟节点
2009/10/31 Javascript
基于jquery1.4.2的仿flash超炫焦点图播放效果
2010/04/20 Javascript
学习javascript,实现插入排序实现代码
2011/07/31 Javascript
6款新颖的jQuery和CSS3进度条插件推荐
2013/03/05 Javascript
JS中批量给元素绑定事件过程中的相关问题使用闭包解决
2013/04/15 Javascript
JavaScript控制按钮可用或不可用的方法
2015/04/03 Javascript
在Node.js中使用HTTP上传文件的方法
2015/06/23 Javascript
Bootstrap网格系统详解
2016/04/26 Javascript
JS从一组数据中找到指定的单条数据的方法
2016/06/02 Javascript
JS不用正则验证输入的字符串是否为空(包含空格)的实现代码
2016/06/14 Javascript
微信小程序实现多个按钮toggle功能的实例
2017/06/13 Javascript
最后说说Vue2 SSR 的 Cookies 问题
2018/05/25 Javascript
vue项目webpack中Npm传递参数配置不同域名接口
2018/06/15 Javascript
vue+iview 实现可编辑表格的示例代码
2018/10/31 Javascript
nodejs的安装使用与npm的介绍
2019/09/11 NodeJs
浅谈vue websocket nodeJS 进行实时通信踩到的坑
2020/09/22 NodeJs
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
Vue中inheritAttrs的使用实例详解
2020/12/31 Vue.js
在Django的URLconf中使用命名组的方法
2015/07/18 Python
Python 读取某个目录下所有的文件实例
2018/06/23 Python
Python可变和不可变、类的私有属性实例分析
2019/05/31 Python
Django3.0 异步通信初体验(小结)
2019/12/04 Python
Macbook安装Python最新版本、GUI开发环境、图像处理、视频处理环境详解
2020/02/17 Python
python如何求圆的面积
2020/07/01 Python
python中通过pip安装库文件时出现“EnvironmentError: [WinError 5] 拒绝访问”的问题及解决方案
2020/08/11 Python
CSS3 Pie工具推荐--让IE6-8支持一些优秀的CSS3特性
2014/09/02 HTML / CSS
HTML5 canvas基本绘图之绘制五角星
2016/06/27 HTML / CSS
普通党员自我剖析材料
2014/10/07 职场文书
大学生军训感言
2015/08/01 职场文书
送给小学生的暑假礼物!小学生必背99首古诗
2019/07/02 职场文书
nginx作grpc的反向代理踩坑总结
2021/07/07 Servers
Sql Server之数据类型详解
2022/02/28 SQL Server