JavaScript輕松創(chuàng)建級聯(lián)函數(shù)的方法示例
一、級聯(lián)函數(shù)是什么?
在一行代碼上,調(diào)用一個接一個的方法。這種技術(shù)在 JQuery 或者其他 JavaScript 庫中是非常常見的。
代碼如下:
$('#myDiv').fadeOut().html('帥哥, 你好!').fadeIn();
或者:
myStr1.replace('k', 'R').toUpperCase().substr(0,4);
這種代碼讓我們能像閱讀文字一樣來閱讀代碼,不僅簡潔,可讀性強更便于維護,提高開發(fā)效率。
那怎么用呢?
要使用級聯(lián)函數(shù),我們必須在每個函數(shù)中返回 this 對象(也就是后面方法中操作的對象)?,F(xiàn)在我們開始創(chuàng)建個級聯(lián)函數(shù):
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();
})
}
接下來我們定義個包含級聯(lián)函數(shù)的對象:
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);
}
}
定義完了級聯(lián)函數(shù),我們調(diào)用的時候就會非常的優(yōu)雅了:
userController.findUser('111@qq.com').formatName().createLayout().displayUser();
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
- JS鏈?zhǔn)秸{(diào)用的實現(xiàn)方法
- 學(xué)習(xí)JavaScript設(shè)計模式(鏈?zhǔn)秸{(diào)用)
- JavaScript中兩種鏈?zhǔn)秸{(diào)用實現(xiàn)代碼
- javascript中的鏈?zhǔn)秸{(diào)用
- javascript 支持鏈?zhǔn)秸{(diào)用的異步調(diào)用框架Async.Operation
- Javascript 鏈?zhǔn)秸{(diào)用實現(xiàn)代碼(參考jquery)
- JavaScript中鏈?zhǔn)秸{(diào)用之研習(xí)
- javascript簡單鏈?zhǔn)秸{(diào)用案例分析
- JavaScript鏈?zhǔn)秸{(diào)用實例淺析
- JavaScript的級聯(lián)函數(shù)用法簡單示例【鏈?zhǔn)秸{(diào)用】
相關(guān)文章
JS小數(shù)轉(zhuǎn)換為整數(shù)的方法分析
這篇文章主要介紹了JS小數(shù)轉(zhuǎn)換為整數(shù)的方法,結(jié)合實例形式分析了數(shù)值轉(zhuǎn)換的常用方法與使用技巧,需要的朋友可以參考下2017-01-01
提供復(fù)制本站內(nèi)容時出現(xiàn),該文章轉(zhuǎn)自腳本之家等字樣的js代碼
提供復(fù)制本站內(nèi)容時出現(xiàn),該文章轉(zhuǎn)自腳本之家等字樣的js代碼...2007-03-03
JavaScript實現(xiàn)鼠標(biāo)滑過圖片變換效果的方法
這篇文章主要介紹了JavaScript實現(xiàn)鼠標(biāo)滑過圖片變換效果的方法,涉及javascript控制鼠標(biāo)事件及樣式變換的技巧,非常具有實用價值,需要的朋友可以參考下2015-04-04
js控制元素顯示在屏幕固定位置及監(jiān)聽屏幕高度變化的方法
這篇文章主要介紹了js控制元素顯示在屏幕固定位置及監(jiān)聽屏幕高度變化的方法,涉及javascript針對頁面元素及樣式屬性的相關(guān)操作技巧,需要的朋友可以參考下2015-08-08
JavaScript編寫實現(xiàn)飛機大戰(zhàn)
這篇文章主要為大家詳細介紹了JavaScript編寫實現(xiàn)飛機大戰(zhàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05

