20170917 前端開發週報:JavaScript函數式編程、作用域和閉包

20170917 前端開發週報:JavaScript函數式編程、作用域和閉包

20170917 前端開發週報

1、用函數式編程對JavaScript進行斷舍離

當從業20的JavaScript老司機學會函數式編程時,他扔掉了90%的特性,也不用面向對象了,最後發現了真愛啊!!!

https://juejin.im/entry/59b8692bf265da064a0f1d53

2、JavaScript作用域和閉包

作用域和閉包在JavaScript裡非常重要。但是在我最初學習JavaScript的時候,卻很難理解。這篇文章會用一些例子幫你理解它們。我們先從作用域開始。作用域 JavaScript的作用域限定了你可以訪問哪些變量。有兩種作用域:全局作用域,局部作用域。

http://www.zcfy.cc/article/javascript-scope-and-closures-css-tricks-4107.html

3、JavaScript實現H5自動重連技術

斷線重連的需求一斷線重連原理二遊戲內自動重連不刷新三刷新遊戲自動重連重連數據Locationreplace重置url重連四實際項目中處理重連機制最後的總結斷線重連的需求。尤其是手機上,會因為網絡的不穩定或者其他原因,導致用戶的socket鏈接斷開。這個時候如果直接讓玩家退出遊戲,重新登錄,無疑是非常影響用戶體驗的事情。所以根據這個需求,就有需要程序來實現斷線後自動重連回去的技術,是用戶能夠再次快速開始遊戲進行戰鬥。

http://www.uml.org.cn/AJAX/201709131.asp

4、深入 JavaScript 數組:進化與性能

正式開始前需要聲明,本文並不是要講解 JavaScript 數組基礎知識,也不會涉及語法和使用案例。本文講得更多的是內存、優化、語法差異、性能、近來的演進。在使用 JavaScript 前,我對 C、C++、C# 這些已經頗為熟悉。與許多 C/C++ 開發者一樣,JavaScript 給我的第一印象並不好。

http://www.zcfy.cc/article/diving-deep-into-javascript-array-8211-evolution-038-performance-void-canvas-4202.html

5、聊聊那些使用前端Javascript實現的機器學習類庫

機器學習(Machine Learning)在最近幾年絕對稱的上是大火,越來越多的公司和資本投入了巨大資源和金錢到這個新上位的技術“新寵”中,尤其是隨著更多的各種機器學習相關類庫的出現和發展,更多新的技術已經被應用到了機器學習中, 現在大家可以看到, Python不再是唯一個老牌機器學習的必用語言, 對於現代神經網絡(neural networks)語言不再是一個問題, 你基本可以使用任何的編程語言, 包括今天我們介紹的標準前端開發語言 - Javascript

http://www.igeekbar.com/igeekbar/post/381.htm

6、使用 CSS 的 font-size-adjust 屬性改善網頁排版

CSS 中的 font-size-adjust 屬性允許開發者基於小寫字母的高度指定 font-size ,這可以有效地提高網頁文字的可讀性。在這篇文章中,你不僅能瞭解到 font-size-adjust 屬性的重要性,並且還能學會如何在你的項目中使用它。

https://juejin.im/post/59b8b97d5188257e8c54d816

7、用Web技術實現移動監測

本文將闡述如何通過 Web 技術實現簡易的移動監測效果,並附上一些有意思的案例。移動偵測,英文翻譯為“Motion detection technology”,一般也叫運動檢測,常用於無人值守監控錄像和自動報警。通過攝像頭按照不同幀率採集得到的圖像會被 CPU 按照一定算法進行計算和比較,當畫面有變化時,如有人走過,鏡頭被移動,計算比較結果得出的數字會超過閾值並指示系統能自動作出相應的處理。

https://aotu.io/notes/2017/06/29/motion-detection/

8、十個免費的web前端開發工具

十個免費的web前端開發工具 By Jake Rocheleau 網絡技術發展迅速,部分技術難以保持 每年都有新的工具出現,這同時也意味著許多舊的工具倒在了新技術的發展之路上。

https://juejin.im/entry/59b8a1cdf265da065d2b521a

9、Facebook 和 GitHub 兩大巨頭聯手推出 Atom-IDE

今日,GitHub 宣佈與 Facebook 合作推出了 Atom-IDE —— 它包括一系列將類 IDE 功能帶到 Atom 的可選工具包。 初次發佈的版本包括更智能、感知上下文的自動完成;導航功能,如大綱視圖和 goto-definition,以及其他有用的功能;還包括錯誤、警告提醒和格式化文檔功能。

https://juejin.im/entry/59b8986251882519777c5192

10、JavaScript中的RegExp對象

正則表達式(regular expression)是一種表達文本模式(即字符串結構)的方法,有點像字符串的模板,常常用作按照“給定模式”匹配文本的工具。比如,正則表達式給出一個 Email 地址的模式,然後用它來確定一個字符串是否為 Email 地址。JavaScript 的正則表達式體系是參照 Perl 5 建立的。 新建正則表達式有兩種方法。

https://microzz.com/2017/08/26/js-regexp/

11、走向 JavaScript 函數式編程

詳見:走向JavaScript函數式編程 本文描述了 JavaScript 函數式編程的若干重要特徵,以及一些實踐建議。旨在幫助非函數式編程的同學,能快速切入到函數式編程的理念。(作者:Jeremy_young)

http://www.jianshu.com/collection/0020d95b7928

12、Node.JS中如何快速掃描端口並發現局域網內的Web服務器地址(80)

在 Node.JS 中進行端口掃描還是比較方便的,一般會有廣播和輪詢兩種方式。即使用廣播和掃描,使用廣播發出的消息有時會被路由器屏蔽,所以並不可靠。使用node.js中的net模塊,可以直接嘗試向目錄主機的某個端口進行連接,如果能建立連接,則說明該地址存在服務器。

http://ourjs.com/detail/59b7a509f1239006149617e2

13、BetterScroll:在移動端滾動場景的應用

BetterScroll 是一款重點解決移動端各種滾動場景需求的開源插件( GitHub地址 ),適用於滾動列表、選擇器、輪播圖、索引列表、開屏引導等應用場景。 為了滿足這些場景,它不僅支持慣性滾動、邊界回彈、滾動條淡入淡出等效果的靈活配置,讓滾動更加流暢,同時還提供了很多 API 方法和事件,以便我們更快地實現滾...

http://www.tuicool.com/articles/UJvIjmJ

14、學習 JavaScript:9 個常見錯誤阻礙你進步

很多人嘗試學習 JavaScript ,但是不久就放棄了。然後他們就告訴自己,“JavaScript 太複雜了”,更有甚者說,“我不是前端開發的料”。 這種情況挺讓人悲傷的。其實根本不必放棄,所要做的僅僅是換一種不同的學習方法。 在這篇文章中,我們將介紹一些最常見的錯誤學習方法,並瞭解如何避免這些錯誤。許多技巧不僅適用於 JavaScript,甚至可以用到 web 開發上,所以也算是一種福利。

https://juejin.im/post/59bb4a7c6fb9a00a53274cd7

15、Redux 還是 Mobx,讓我來解決你的困惑

我在去年大量的使用了 Redux,但我最近都在使用 Mobx 來做狀態(state)管理。似乎現在社區裡關於該選什麼來替代 Redux 很自然地成為了一件困惑的事。開發者不確定該選擇哪種解決方案。這個問題並不只是出現在 Redux 與 Mobx 上。無論何時,只要存在選擇,人們就會好奇最好的解決問題的方式是什麼。我現在寫的這些是為了解決 Redux 和 Mobx 這兩個狀態管理庫之間的困惑。

https://segmentfault.com/a/1190000011148981

16、為什麼我們要做三份 Webpack 配置文件

時至今日,Webpack 已經成為前端工程必備的基礎工具之一,不僅被廣泛用於前端工程發佈前的打包,還在開發中擔當本地前端資源服務器(assets server)、模塊熱更新(hot module replacement)、API Proxy 等角色,結合 ESLint 等代碼檢查工具,還可以實現在對源代碼的嚴格校驗檢查。

https://juejin.im/entry/59b8a83b5188256c60692b3f

17、前端常見跨域解決方案(全)

什麼是跨域? 跨域是指一個域下的文檔或腳本試圖去請求另一個域下的資源,這裡跨域是廣義的。 廣義的跨域: {代碼...} 其實我們通常所說的跨域是狹義的,是由瀏覽器同源策略限制的一類請求場景。

https://segmentfault.com/a/1190000011145364

18、在 Node.js 中使用原生 ES 模塊

從版本 8.5.0 開始,Node.js 開始支持原生 ES 模塊,可以通過命令行選項打開該功能。新功能很大程度上得歸功於 Bradley Farias。

https://zhuanlan.zhihu.com/p/29314408

19、探索webpack模塊以及webpack3新特性

本文從簡單的例子入手,從打包文件去分析以下三個問題:webpack打包文件是怎樣的?如何做到兼容各大模塊化方案的?webpack3帶來的新特性又是什麼?

https://juejin.im/post/59b9d2336fb9a00a636a3158

20、你所不知道的 CSS 動畫技巧與細節

怕標題起的有點大,下述技巧如果你已經掌握了看看就好,歡迎斧正,本文希望通過介紹一些 CSS 不太常用的技巧,輔以一些實踐,讓讀者可以更加深入的理解掌握 CSS 動畫。 廢話少說,直接進入正題,本文提到的動畫不加特殊說明,皆指 CSS 動畫。

https://github.com/chokcoco/iCSS/issues/27

喜歡這篇文章的朋友,歡迎關注、收藏、分享、評論,幫我上熱門,你的支持,是我每日更新的動力!

喜歡前端的朋友可以點擊關注一下我,每日分享精彩的前端文章!

今日更多精彩文章:http://caibaojian.com/fe-daily-20170917.html

相關推薦

推薦中...