加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

JavaScript 中的方法链

发布时间:2021-04-12 14:45:06 所属栏目:外闻 来源:互联网
导读:定曾经用过 jQuery 之类的库,可能看到过类似的东西。在进行级联时主要有两种方法:一种是一个接一个的执行方法,另一种是在同一行上。在纯 JavaScript 中这种做法也很普遍。你可以在数组、字符串和 promise 看到它。 在这些情况下所有的过程都是相同的。首

定曾经用过 jQuery 之类的库,可能看到过类似的东西。在进行级联时主要有两种方法:一种是一个接一个的执行方法,另一种是在同一行上。在纯 JavaScript 中这种做法也很普遍。你可以在数组、字符串和 promise 看到它。

在这些情况下所有的过程都是相同的。首先引用要使用的对象。然后根据需要使用多种方法。但不是单独使用这些方法,而要一个接一个地使用。基本上是把它们链接在一起。先看一些例子。

方法链的例子

在处理字符串时有两种方法。第一个种不用方法链,这要求必须在字符串上分别使用每个方法,这样必须每次都引用这个字符串。

第二种方式是用方法链。这时可以用所有想要的字符串方法。写出的代码也可以是单行或多行,这取决于你的习惯。而且只需要引用一次字符串。尽管结果相同,但是代码量却有很大的差异。

 

如果是字符串,则使用的是原始数据类型。但是你所使用的方法例如 toLowerCase(),存在于 String 对象的原型中。在对象上使用方法链还有一个关键要素:this。

为了使链起作用,方法必须返回与其一起使用的对象,也就是必须返回 this。就像接力赛跑时的接力棒一样。

在 JavaScript 中实现方法链

为了使方法链有效,必须满足三个条件:首先,需要一些对象。其次,该对象需要一些以后可以调用的方法。第三,这些方法必须返回对象本身,它们必须返回 this 才能使用方法链。

让我们创建一个简单的对象 person。person 有 name, age 和 state 属性。state 用来表示当前处于什么状态。要想改变这个状态,需要用到几个方法:walk(), sleep(), eat(), drink(), work() 和 exercise()。

由于我们希望所有这些方法都是可链的,所以它们都必须返回 this。另外代码中还有一个用来把当前状态记录到控制台的工具方法。

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读