-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

JavaScript ES6 函數式編程入門經典

( 簡體 字)
作者:[印] Anto Aravinth 著 梁宵 譯類別:1. -> 程式設計 -> 網路編程 -> Javascript
譯者:
出版社:清華大學出版社JavaScript ES6 函數式編程入門經典 3dWoo書號: 48332
詢問書籍請說出此書號!

缺書
NT售價: 250

出版日:1/1/2018
頁數:172
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302487142
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

譯 者 序
函數式編程是一種古老的編程范式。近些年來,隨著RxJS 等函數
式框架的流行,它煥發了青春,再次進入了我們的視野。與Haskell 等
語言相比,JavaScript 雖然不是一種純函數語言,但它將函數視為一等
公民,非常適合函數式編程范式。函數式編程為應用帶來的可維護性、
可測試性和可擴展性是不言而喻的,而純函數、高階函數、柯里化、組
合、Monad 等諸多概念往往令剛剛接觸它的人無從下手。
快速掌握一個知識體系的秘訣是抓住概念并理清概念之間的關系。
本書將函數式編程中那些抽象的原理分解為一個個簡單的概念,娓娓道
來,并配以豐富的實戰案例,逐步帶你領略函數式編程的魅力。掌握函
數式編程思想對開發與理解單數據流應用非常有幫助,愿本書帶你開啟
這段非凡的旅程!
本譯作能夠順利完成,首先感謝清華大學出版社李陽老師的推薦與
信任,提供的非常有價值的建議使我在翻譯的過程中受益良多。感謝我
的妻子對我的理解與支持。感謝如天使般可愛的女兒Eva,你是上天賜
給我最好的禮物。本書全部內容由梁宵翻譯,參與翻譯的還有騰訊高級
工程師王志壽和Uber 高級工程師羅譽家。
在翻譯過程中我盡力修正了一些原作的小錯誤,但由于水平有限,
難免存在不足之處,懇請廣大
內容簡介:

《JavaScript ES6函數式編程入門經典》使用JavaScript ES6帶你學習函數式
編程。你將學習柯里化、偏函數、高階函數以及Monad等概念。
  目前,編程語言已經將焦點從對象轉移到函數。JavaScript支持函數式編
程,并允許開發者編寫精心設計的代碼。
主要內容
● 掌握函數式編程的概念
● 清楚函數在JavaScript中的地位
● 理解真實的函數式類庫,并創建一個模擬underscore.js的函數式類庫
● 實踐純錯誤處理技術,例如函子和Monad
● 了解ES6的函數式編程特性,例如擴展運算符和Generator
目錄:

第1章 函數式編程簡介1
1.1什么是函數式編程?為何它重要1
1.2引用透明性4
1.3命令式、聲明式與抽象5
1.4函數式編程的好處7
1.5純函數7
1.5.1純函數產生可測試的代碼7
1.5.2合理的代碼9
1.6并發代碼10
1.7可緩存11
1.8管道與組合12
1.9純函數是數學函數13
1.10我們要構建什么15
1.11JavaScript是函數式編程語言嗎15
1.12小結16
第2章JavaScript函數基礎17
2.1ECMAScript歷史18
2.2創建并執行函數19
2.2.1第一個函數19
2.2.2嚴格模式21
2.2.3return語句是可選的22
2.2.4多語句函數22
2.2.5函數參數24
2.2.6ES5函數在ES6中是有效的24
2.3設置項目24
2.3.1初始設置24
2.3.2用第一個函數式方法處理循環問題26
2.3.3export要點28
2.3.4import要點28
2.3.5使用babel-node運行代碼29
2.3.6在npm中創建腳本30
2.3.7從git上運行源代碼31
2.4小結31
第3章高階函數33
3.1理解數據34
3.1.1理解JavaScript數據類型34
3.1.2存儲函數35
3.1.3傳遞函數35
3.1.4返回函數37
3.2抽象和高階函數38
3.2.1抽象的定義38
3.2.2通過高階函數實現抽象39
3.3真實的高階函數42
3.3.1every函數42
3.3.2some函數44
3.3.3sort函數44
3.4小結48
第4章閉包與高階函數49
4.1理解閉包50
4.1.1什么是閉包50
4.1.2記住閉包生成的位置52
4.1.3回顧sortBy函數53
4.2真實的高階函數(續)54
4.2.1tap函數54
4.2.2unary函數56
4.2.3once函數57
4.2.4memoized函數58
4.3小結60
第5章數組的函數式編程61
5.1數組的函數式方法62
5.1.1map62
5.1.2filter65
5.2連接操作67
5.3reduce函數71
5.4zip數組77
5.5小結81
第6章柯里化與偏應用83
6.1一些術語84
6.1.1一元函數84
6.1.2二元函數84
6.1.3變參函數84
6.2柯里化86
6.2.1柯里化用例87
6.2.2日志函數——應用柯里化89
6.2.3回顧curry90
6.2.4回顧日志函數93
6.3柯里化實戰94
6.3.1在數組內容中查找數字94
6.3.2求數組的平方95
6.4數據流96
6.4.1偏應用96
6.4.2實現偏函數97
6.4.3柯里化與偏應用99
6.5小結100
第7章組合與管道101
7.1組合的概念102
7.2函數式組合104
7.2.1回顧map與filter104
7.2.2compose函數106
7.3應用compose函數106
7.3.1引入curry與partial108
7.3.2組合多個函數111
7.4管道/序列113
7.5組合的優勢114
7.5.1組合滿足結合律114
7.5.2使用tap函數調試115
7.6小結116
第8章函子117
8.1什么是函子118
8.1.1函子是容器118
8.1.2函子實現了map方法120
8.2MayBe函子121
8.2.1實現MayBe函子122
8.2.2簡單用例123
8.2.3真實用例125
8.3Either函子129
8.3.1實現Either函子130
8.3.2reddit例子的Either版本131
8.4Pointed函子134
8.5小結134
第9章深入理解Monad135
9.1根據搜索詞條獲取Reddit評論136
9.2問題描述136
9.2.1實現第一步138
9.2.2合并Reddit調用141
9.2.3多個map的問題144
9.3通過join解決問題146
9.3.1實現join146
9.3.2實現chain148
9.4小結151
第10章使用Generator153
10.1異步代碼及其問題154
10.2Generator基礎156
10.2.1創建Generator156
10.2.2Generator的注意事項157
10.2.3yield關鍵字158
10.2.4done屬性160
10.2.5向Generator傳遞數據162
10.3使用Generator處理異步調用164
10.3.1一個簡單的案例164
10.3.2一個真實的案例169
10.4小結172
附錄173
序: