基于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 相关文章推荐
简单的ajax连接库分享(不用jquery的ajax)
Jan 19 Javascript
通过设置CSS中的position属性来固定层的位置
Dec 14 Javascript
实用jquery操作表单元素的简单代码
Jul 04 Javascript
Bootstrap标签页(Tab)插件使用方法
Mar 21 Javascript
vue语法之拼接字符串的示例代码
Oct 25 Javascript
深入理解Node module模块
Mar 26 Javascript
妙用缓存调用链实现JS方法的重载
Apr 30 Javascript
vue里input根据value改变背景色的实例
Sep 29 Javascript
微信小程序 腾讯地图SDK 获取当前地址实现解析
Aug 12 Javascript
layui: layer.open加载窗体时出现遮罩层的解决方法
Sep 26 Javascript
js、jquery实现列表模糊搜索功能过程解析
Mar 27 jQuery
详解JavaScript类型判断的四种方法
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
php数组函数序列之array_values() 获取数组元素值的函数与方法
2011/10/30 PHP
PHP获取数组中重复最多的元素的实现方法
2014/11/11 PHP
PHP图片处理之图片旋转和图片翻转实例
2014/11/19 PHP
PHP Oauth授权和本地加密实现方法
2016/08/12 PHP
PHP文件操作简单介绍及函数汇总
2020/12/11 PHP
Javascript模块模式分析
2008/05/16 Javascript
IE 下的只读 innerHTML
2009/08/21 Javascript
JQERY limittext 插件0.2版(长内容限制显示)
2010/08/27 Javascript
jquery div 居中技巧应用介绍
2012/11/24 Javascript
Seajs的学习笔记
2014/03/04 Javascript
js判断当前浏览器类型,判断IE浏览器方法
2014/06/02 Javascript
javascript框架设计读书笔记之数组的扩展与修复
2014/12/02 Javascript
轻松创建nodejs服务器(5):事件处理程序
2014/12/18 NodeJs
跟我学习javascript的全局变量
2015/11/16 Javascript
JavaScript文本框脚本编写的注意事项
2016/01/25 Javascript
JQuery validate插件验证用户注册信息
2016/05/11 Javascript
使用jQuery给input标签设置默认值
2016/06/20 Javascript
浅谈json取值(对象和数组)
2016/06/24 Javascript
arcgis for js 修改infowindow样式的方法
2016/11/02 Javascript
前端面试知识点锦集(JavaScript篇)
2016/12/28 Javascript
BootStrap便签页的简单应用
2017/01/06 Javascript
NodeJS基础API搭建服务器详细过程记录
2017/04/01 NodeJs
JavaScript数组的5种迭代方法
2017/09/29 Javascript
原生JS实现Ajax跨域请求flask响应内容
2017/10/24 Javascript
在js代码拼接dom对象到页面上的模板总结
2018/10/21 Javascript
JS基础之逻辑结构与循环操作示例
2020/01/19 Javascript
vue中是怎样监听数组变化的
2020/10/24 Javascript
对python中的six.moves模块的下载函数urlretrieve详解
2018/12/19 Python
Scrapy模拟登录赶集网的实现代码
2020/07/07 Python
Python使用pyexecjs代码案例解析
2020/07/13 Python
Python Django路径配置实现过程解析
2020/11/05 Python
如何执行一个shell程序
2012/11/23 面试题
质量月活动策划方案
2014/03/10 职场文书
优秀党员自我评价范文
2014/09/15 职场文书
Vue3 Composition API的使用简介
2021/03/29 Vue.js
关于Vue Router的10条高级技巧总结
2021/05/06 Vue.js