underscore之Chaining_動力節(jié)點Java學(xué)院整理
還記得jQuery支持鏈?zhǔn)秸{(diào)用嗎?
$('a').attr('target', '_blank')
.append(' <i class="uk-icon-external-link"></i>')
.click(function () {});
如果我們有一組操作,用underscore提供的函數(shù),寫出來像這樣:
_.filter(_.map([1, 4, 9, 16, 25], Math.sqrt), x => x % 2 === 1); // [1, 3, 5]
能不能寫成鏈?zhǔn)秸{(diào)用?
能!
underscore提供了把對象包裝成能進行鏈?zhǔn)秸{(diào)用的方法,就是chain()函數(shù):
_.chain([1, 4, 9, 16, 25]) .map(Math.sqrt) .filter(x => x % 2 === 1) .value(); // [1, 3, 5]
因為每一步返回的都是包裝對象,所以最后一步的結(jié)果需要調(diào)用value()獲得最終結(jié)果。
小結(jié)
通過學(xué)習(xí)underscore,是不是對JavaScript的函數(shù)式編程又有了進一步的認識?
相關(guān)文章
Javascript hasOwnProperty 方法 & in 關(guān)鍵字
hasOwnProperty :如果 object 具有指定名稱的屬性,那么方法返回 true;反之則返回 false。2008-11-11
JS多個表單數(shù)據(jù)提交下的serialize()應(yīng)用實例分析
這篇文章主要介紹了JS多個表單數(shù)據(jù)提交下的serialize()應(yīng)用,接合實例形式分析了原生javascript實現(xiàn)多個表單提交時serialize操作相關(guān)使用技巧與操作注意事項,需要的朋友可以參考下2019-08-08
深入理解requestAnimationFrame的動畫循環(huán)
這篇文章先給大家介紹了什么是requestAnimationFrame,而后才深入講述關(guān)于requestAnimationFrame的動畫循環(huán),文章介紹的非常詳細,相信對大家學(xué)習(xí)requestAnimationFrame具有一定的參考借鑒價值,有需要的朋友下面來一起看看吧。2016-09-09
JavaScript第七種數(shù)據(jù)類型Symbol的用法詳解
Symbol是ES6中引入的一種新的基本數(shù)據(jù)類型,用于表示一個獨一無二的值。它是JavaScript中的第七種數(shù)據(jù)類型。本文將詳細講講Symbol的使用,需要的可以參考一下2022-09-09

