一、级联函数是什么?

在一行代码上,调用一个接一个的方法。这种技术在 JQuery 或者其他 JavaScript 库中是非常常见的。
代码如下:
$('#myDiv').fadeOut().html('帅哥, 你好!').fadeIn();
或者:
myStr1.replace('k', 'R').toUpperCase().substr(0,4);
这种代码让我们能像阅读文字一样来阅读代码,不仅简洁,可读性强更便于维护,提高开发效率。
那怎么用呢?
要使用级联函数,我们必须在每个函数中返回 this 对象(也就是后面方法中操作的对象)。现在我们开始创建个级联函数:
var usresData = [
{firstName: 'Zhang', lastName: 'San', email: '111@qq.com', id: 102},
{firstName: 'Li', lastName: 'Si', email: '222@qq.com', id: 103},
{firstName: 'Wang', lastName: 'Wu', email: '333@qq.com', id: 105}
];
function getCaseName(str) {
return str.replace(/\w\S*/g, function(txt){
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
})
}
接下来我们定义个包含级联函数的对象:
var userController = {
currentUser = '',
findUser = function (userEmail) {
var arrayLength = usersData.length, i;
for (i = arrayLength - 1; i >= 0; i--) {
if (usersData[i].email === userEmail) {
this.currentUser = usersData[i];
break;
}
}
return this;
},
formatName: function () {
if (this.currentUser) {
this.currentUser.fullName = getCaseName(this.currentUser.firstName) + ' ' + getCaseName(this.currentUser.lastName);
}
return this;
},
createLayout: function () {
if (this.currentUser) {
this.currentUser.viewData = '<h2>成员: ' + this.currentUser.fullName + '</h2>'
+ '<p>ID: ' + this.currentUser.id + '</p>' + '<p>Email: ' + this.currentUser.email + '</p>';
}
return this;
},
displayUser: function () {
if (!this.currentUser) return;
$('.members-wrapper').append(this.currentUser.viewData);
}
}
定义完了级联函数,我们调用的时候就会非常的优雅了:
userController.findUser('111@qq.com').formatName().createLayout().displayUser();
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
# javascript
# 级联函数
# js级联函数
# 创建函数
# JS链式调用的实现方法
# 学习JavaScript设计模式(链式调用)
# JavaScript中两种链式调用实现代码
# javascript中的链式调用
# javascript 支持链式调用的异步调用框架Async.Operation
# Javascript 链式调用实现代码(参考jquery)
# JavaScript中链式调用之研习
# javascript简单链式调用案例分析
# JavaScript链式调用实例浅析
# JavaScript的级联函数用法简单示例【链式调用】
# 级联
# 就会
# 让我们
# 这篇文章
# 我们必须
# 或者其他
# 要使
# 能像
# 接一个
# 库中
# 你好
# 在每个
# 有疑问
# qq
# id
# San
# email
# Zhang
# lastName
# firstName
相关文章:
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
如何快速搭建自助建站会员专属系统?
建站之星上传入口如何快速找到?
已有域名和空间如何快速搭建网站?
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
建站主机默认首页配置指南:核心功能与访问路径优化
金*站制作公司有哪些,金华教育集团官网?
小说建站VPS选用指南:性能对比、配置优化与建站方案解析
如何在IIS中新建站点并配置端口与IP地址?
Android自定义控件实现温度旋转按钮效果
宝塔新建站点为何无法访问?如何排查?
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
如何在景安云服务器上绑定域名并配置虚拟主机?
如何快速搭建高效香港服务器网站?
建站之星后台密码如何安全设置与找回?
淘宝制作网站有哪些,淘宝网官网主页?
台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?
网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?
整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?
javascript中对象的定义、使用以及对象和原型链操作小结
如何在IIS管理器中快速创建并配置网站?
如何在Tomcat中配置并部署网站项目?
高端网站建设与定制开发一站式解决方案 中企动力
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
建站之星导航配置指南:自助建站与SEO优化全解析
网站app免费制作软件,能免费看各大网站视频的手机app?
香港服务器网站推广:SEO优化与外贸独立站搭建策略
网站制作员失业,怎样查看自己网站的注册者?
如何用PHP快速搭建CMS系统?
开源网站制作软件,开源网站什么意思?
如何在Windows服务器上快速搭建网站?
Swift中swift中的switch 语句
广平建站公司哪家专业可靠?如何选择?
制作农业网站的软件,比较好的农业网站推荐一下?
如何彻底卸载建站之星软件?
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化
建站之星后台密码遗忘或太弱?如何重置与强化?
电视网站制作tvbox接口,云海电视怎样自定义添加电视源?
如何在万网开始建站?分步指南解析
设计网站制作公司有哪些,制作网页教程?
建站之星CMS建站配置指南:模板选择与SEO优化技巧
如何选择域名并搭建高效网站?
北京网站制作公司哪家好一点,北京租房网站有哪些?
长沙做网站要多少钱,长沙国安网络怎么样?
如何通过IIS搭建网站并配置访问权限?
阿里云网站制作公司,阿里云快速搭建网站好用吗?
济南专业网站制作公司,济南信息工程学校怎么样?
建站之星代理商如何保障技术支持与售后服务?
成都网站制作报价公司,成都工业用气开户费用?
*请认真填写需求信息,我们会在24小时内与您取得联系。