js链式调用
最开始接触到链式调用是在jQuery库中,代码应该是这样:
1 $("#target").css("width","200px").css("color","red");
在一条链中,既设置了width,又设置了字体颜色,仅仅需要一行代码。
除了行数比两行代码少之外,找到#target对象也需要一次(如果写成两行,那么需要在DOM中找#target两次),链式调用的优势就在这里。
需要了解的是,每一个链结返回的仍然是目标对象,所以才可以作为调用者继续调用下一个链结。
因此,需要注意的是,链式调用中的链结必须要返回调用对象本身,否则,链结可能会断掉。
比如:
$("#target").css("width").css("color","red")
控制台会报错,说Object ***没有css方法。
因为css("width")返回的是元素的像素(string格式),这在jquery中应该叫getter,即获取;而css("width","200px")叫setter,即设置。链结应该都是setter,除了链尾可以使用getter,当然前提是不需要返回值为调用者本身。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。