国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

JavaScript函數式編程(Functional Programming)聲明式與命令式實例分析

2024-05-06 16:51:11
字體:
來源:轉載
供稿:網友

本文實例講述了JavaScript函數式編程(Functional Programming)聲明式與命令式。分享給大家供大家參考,具體如下:

函數式編程屬于聲明式編程(declarative programming)的范疇,經常跟聲明式編程一塊兒討論的是命令式編程(imperative programming),因為它們是兩種不太一樣的風格。

命令式編程一般就是說清楚具體要怎么樣得到一個結果:先這樣做,再這樣做,然后再這樣,如果這樣,就這樣做 … 聲明式編程就是聲明(說明)一下你想得到的結果是什么樣的:把這組電影里的平均分大于 9 分的電影過濾出來給我。

比如有一組電影,你想過濾出評分 9 分以上的電影。

let movies = [ { title: 'The Shawshank Redemption', rating: 9.6 }, { title: 'Forrest Gump', rating: 9.4 }, { title: 'Roman Holiday', rating: 8.9 }]

命令式:

const imperativeMovieFilter = (movies) => { let result = [] for (let i = 0; i < movies.length; i++) {   if (movies[i].rating >= 9) {   result.push(movies[i])  } } return result}

在函數里面,先來個 result,讓它等于一個空白的數組。然后我們又 for 循環,去處理 movies ,循環的時候判斷當前項目里的評分(rating)是不是大于等于 9,如果是的話,就把這個項目放到 result 里面。循環完成以后,會返回處理之后的結果。命令式編程里,詳細的說明了得到結果需要做的每個操作。

聲明式:

const declarativeMovieFilter = (movies) => { return movies.filter((movie) => movie.rating >= 9)}

在上面這個函數里,我們只是說明了一下,自己想要的結果是什么樣的,就是評分在 9 分以上的電影。

希望本文所述對大家JavaScript程序設計有所幫助。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 滁州市| 津市市| 云龙县| 禹城市| 股票| 湄潭县| 徐州市| 措勤县| 阳朔县| 都兰县| 南宫市| 普陀区| 建阳市| 嘉善县| 巴林左旗| 视频| 刚察县| 永兴县| 汉沽区| 福州市| 东城区| 察哈| 桦川县| 旺苍县| 瓮安县| 余干县| 金乡县| 苗栗市| 红安县| 永春县| 吉木萨尔县| 天门市| 彭泽县| 绥化市| 资阳市| 太谷县| 惠安县| 航空| 弥渡县| 襄城县| 瑞安市|