开发者社区> 异步社区> 正文

《JavaScript设计模式》——1.8 方法还可以这样用

简介: 没错,但是你发现没,你调用了3个方法,但是你对对象a书写了3遍。这是可以避免的,那就要在你声明的每一个方法末尾处将当前对象返回,在JavaScript中this指向的就是当前对象,所以你可以将它返回。例如我们开始写的第一个对象还记得么?改动它很简单,像下面这样就可以。
+关注继续查看

本节书摘来自异步社区《JavaScript设计模式》一书中的第1章,第1.8节,作者:张容铭著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.8 方法还可以这样用

“没错,但是你发现没,你调用了3个方法,但是你对对象a书写了3遍。这是可以避免的,那就要在你声明的每一个方法末尾处将当前对象返回,在JavaScript中this指向的就是当前对象,所以你可以将它返回。例如我们开始写的第一个对象还记得么?改动它很简单,像下面这样就可以。”

var CheckObject = {
  checkName : function(){
    // 验证姓名
    return this;
  },
  checkEmail : function(){
    // 验证邮箱
    return this;
  },
  checkPassword : function(){
    // 验证密码
    return this;
  }
}

“此时我们要想使用他就可以这样:”

CheckObject.checkName().checkEmail().checkPassword();
“当然同样的方式还可以放到类的原型对象中。”

var CheckObject = function(){};
CheckObject.prototype = {
  checkName : function(){
    // 验证姓名
    return this;
  },
  checkEmail : function(){
    // 验证邮箱
    return this;
  },
  checkPassword : function(){
    // 验证密码
    return this;
  }
}

“但使用时候也要先创建一下:”

var a = new CheckObject();
a.checkName().checkEmail().checkPassword();

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
用手动创建新的script标签的方式,实现JavaScript脚本的异步加载
用手动创建新的script标签的方式,实现JavaScript脚本的异步加载
25 0
【JavaScript框架封装】实现一个类似于JQuery的CSS样式框架的封装
版权声明:本文为博主原创文章,未经博主允许不得转载。更多学习资料请访问我爱科技论坛:www.52tech.tech https://blog.csdn.net/m0_37981569/article/details/81123779 ...
865 0
javascript设计模式--接口
最近在看javascript设计模式的书籍《pro javascript design pattrens》,觉得很不错,可以提高自己对js oo的理解,也可能帮助自己更好的理解别人写的js library,提高自己js的水平。
792 0
javascript设计模式--封装和信息隐藏(下)
  今天讲解的内容是高级模式(Advanced Patterns),如何实现静态方法和属性,常量还有其他一些知识点。   1.静态方法和属性   其实要实现这一功能还是要借助于闭包。在上一讲中的第三种实现方式也使用了闭包,但通过那种实现,内部属性和方法是实例级别的。
763 0
javascript设计模式--封装和信息隐藏(上)
  今天博文关注的是javascript中的封装,文章内容来自《pro javascript design patterns》(有兴趣的朋友可以直接去下)和自己对这一问题的理解。   本文分上下两部分,上部讲基本模式(basic patterns):完全暴露法,下划线标记法和使用闭包;下部讲高级模式(Advanced Patterns),如何实现静态方法和属性,常量还有其他一些知识点。
805 0
javascript设计模式--继承(上)
  本章的主题是继承,分为上下两部分来介绍,上主要来介绍call和apply方法,下用来介绍继承的几种实现方式。   在介绍继承的时候,call和apply是一个绕不过去的话题,也是大家需要深入了解的知识。
685 0
JavaScript中清空数组的三种方式
方式1、splice ? 1 2 3 var ary = [1,2,3,4]; ary.splice(0,ary.length); console.log(ary); // 输出 [],空数组,即被清空了  详细说明:http://www.w3school.com.cn/jsref/jsref_splice.asp 方式2、length赋值为0 这种方式很有意思,其它语言如Java,其数组的length是只读的,不能被赋值。
791 0
+关注
异步社区
异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。
12049
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载