搜尋
首頁web前端js教程年終總結:2016 年 JavaScript 回顧
年終總結:2016 年 JavaScript 回顧Jan 17, 2017 am 10:36 AM
javascript

2016年對於每個web開發人員來說,javascript都是工作生活中非常大的一部分。

JavaScript的流行持續激增。不是每個人都喜歡這種語言,但是你很少聽到十年前的嘲笑意見。就我個人而言,我一直喜歡JavaScript,即使在早期,那些令人沮喪的年代。只要從C++、Java或PHP方向接近它的人首先都會感到困惑:JavaScript看起來很熟悉,但又不是。克服你的假設,你會喜歡它簡單的優雅,實用性和靈活性。 (例如:日期處理仍然是噩夢!)

JavaScript在5月份慶祝了它21歲的生日,讓我們回顧下它成熟發展的這第一年...

ECMAScript發展

viaES6/ 2015是語言自誕生以來最重要的更新。規範花了七年才完成,但瀏覽器和運行時終於開始支援箭頭函數,let、const,這帶來了更多的樂趣。 ES6相容性表正在變成一個光輝的綠色。

如果你需要支援舊的瀏覽器,全面切換到ES6也許會有一點早。對於舊的瀏覽器,一年多前發布的項目。您可以用ES6到ES5編譯器(如Babel),但是開發非常複雜,需要引入額外的建置步驟。

ES7/2016是更多的革命。一個令人興奮的新功能是async,它允許非同步程式碼以同步方式寫入,而沒有回呼或Promises(繼續困惑我)的語法複雜性。

漸進式Web應用程式

via我最喜歡的基於JavaScript的2016年技術授予Progressive Web Apps。 PWA在Google的2015年Chrome開發者高峰會上宣布,但穩定的技術和工具終於在7月到達Chrome 52。 PWA允許離線優先功能,並取代片狀AppCache方法。 Web應用程式終於可以和native應用程式競爭,並提供以下優勢:

1.主螢幕圖示

2.快速啟動和自訂閃屏

3.快速執行

4.離線功能,無需網路連線

5.網址,連結和書籤

6.全螢幕或主題介面

7.沙盒執行

8.本地或基於雲端的儲存

9.更少的設備空間和處理資源

10.更好的安全性(HTTPS是先決條件)

11.從任何搜尋引擎輕鬆發現

12.請在安裝前嘗試

13.更簡單的部署:它只是一個Web應用程式

14.沒有13.更簡單的部署:它只是一個Web應用程式

14.沒有AppStore廢話:你的應用程式可以包含任何裸體畫並且你絕對會渴望沒有人能拿走你30%的利潤!

最重要的是:任何網站或應用程式可以在幾小時內轉換為PWA。步驟:

1.在伺服器上啟用HTTPS。

2.建立一個應用程式清單 - 應用程式根目錄中的JSON文件,用於定義名稱,顏色,圖示和顯示選項。

3.建立一個Service Worker - 根目錄中的JavaScript檔案用於攔截網路呼叫,並且可以根據需要返回快取或即時資料。

初期例子很少,但是PWA提供了一個不錯的機會「動員」您的網路應用程式。雖然不能保證蘋果將實施這項技術,但這並不重要,你的應用程式仍然可以在Safari中工作,只是它不會從離線執行中受益。我有一種感覺一旦Android上web體驗有明顯提升,蘋果將鼓勵支持PWA。

框架固定

via很難做出一個公正的判斷,但是React似乎在今年受到最多的關注。你也許不同意;因為這取決於你使用的是什麼,你曾經瀏覽過的地方和你說過的話!

Vue.js已普及,2.0版本於9月發布。

AngularJS可能已經失​​去了它在2015年獲得的一些勢頭,但這可能會隨著9月發布Angular 2而改變。新版本是一個完全重寫;它不是向後相容v1.0。

雖然新的框架和函式庫是令人興奮的,但是十年前的jQuery仍然很強大。版本3.0於6月9日發布,v3.1隨後於7月7日出現。該庫現在以嚴格模式運行,支援Promise,並實現了各種修復。 (請參閱完整修改清單的升級指南。)

在使用JavaScript的96.4%的網站上使用了jQuery。與之相比,Angular是最常用的現代框架 - 佔0.5%。 jQuery 1.x是最受歡迎的版本,佔93.5%的使用率。版本2.x佔6.0%、版本3.x佔0.5%。

我一直批評開發人員上來就直接使用jQuery。當有一個其他更合適的選擇或只要一小段JavaScript就能實現需求的時候,它就會被過度使用了。然而,它提供了更淺的學習曲線,比大多數框架更靈活。其他框架或函式庫要取代它需要很多年的時間。

API濫用

🎜例如電池狀態API。在我2013年寫JavaScript的時候,它似乎很有用;當你的應用程式偵測到用戶的手機即將關機的時候,到底怎樣才能更好的最小化網路請求和處理呢?🎜

不幸的是,Mozilla預估大約有6%的網站用了這個API,但大多數是廣告客戶用來檢測電池狀態,並追蹤用戶瀏覽了哪些網站的網域。也有可能是某些服務商知道一個用戶手機快關機絕望的時候,以此來提高某些服務的價格,

雖然這不是JavaScript或API的問題,出於隱私方面的原因,Mozilla採取了空前的手段把電池狀態API從Firefox 53中刪除。這不太可能出現在ios裝置中,其他具有類似原因的API也包括感測器和藍牙。這是一個不太光彩的事情:這些API都有實際的好處,我希望隱私問題可以在未來的版本中解決。

Node新版本

每年Node.JS會為我們帶來兩次發布進度,4月的6.0版本和10月的7.0版本。

目前該平台呈上升趨勢,儘管W3Techs報告Node.js伺服器使用率僅為0.2%,而PHP為82.3%。這些數字可能有點誤導,因為Node.js即使安裝了,也不一定能辨識。

因為php已經開始很久了,現在依然是服務端最可靠的選擇。然而,Node.js正在書寫自己的歷史,並被所有語言信仰的開發者廣泛使用。

Yarn

我非常喜歡npm,並且認為它是Node.js工具火爆的主要原因之一。在npm上我從來沒有遇到過太多的問題,但我不是在Facebook這樣大的專案上工作。

Facebook的工程師在10月份發布了Yarn。它是一個新的Node.js套件管理器,設計比npm更快更穩定。它依賴npm註冊表,因此可以和npm保持完全相容。

Tim Severien的Yarn vs npm:你需要知道的一切。我同意他的結論:

雖然Yarn不是複製品,但它改善了npm幾個缺陷的地方。如果npm從Yarn身上學習,並要求Facebook、Google和其他Yarn貢獻者一起來改進npm,這樣是不是很爽呢?

厭倦疲勞

2016年的有篇文章叫I-can't-take-this-any-more入選了Jose Aguinaga的2016年學習JavaScript的感覺。

這可能是種幽默的方式以表明當前JavaScript的狀態,但有一點要說明的就是,就是現在要跟上最新的趨勢,框架和建議變得越來越難。當面對大量的技術方案評估時,開發人員會互相爭執。

我的建議:不要試著跟上。因為這根本做不到。你今天重點關注的任何系統,明天都將被更好的東西取代。為您的專案選擇一個好的方案,並堅持使用它,除非它讓工作變得很糟糕。

有一個是可以確定的就是JavaScript本身。先學習語言,並繼續擴展你的知識。您的經驗將幫助您了解每個框架的運作方式,以便您做出明智的選擇,即便這種選擇可能是完全放棄所有的框架。

祝大家2017工作,生活都一切順利。

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
es6数组怎么去掉重复并且重新排序es6数组怎么去掉重复并且重新排序May 05, 2022 pm 07:08 PM

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

JavaScript的Symbol类型、隐藏属性及全局注册表详解JavaScript的Symbol类型、隐藏属性及全局注册表详解Jun 02, 2022 am 11:50 AM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

原来利用纯CSS也能实现文字轮播与图片轮播!原来利用纯CSS也能实现文字轮播与图片轮播!Jun 10, 2022 pm 01:00 PM

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

JavaScript对象的构造函数和new操作符(实例详解)JavaScript对象的构造函数和new操作符(实例详解)May 10, 2022 pm 06:16 PM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

JavaScript面向对象详细解析之属性描述符JavaScript面向对象详细解析之属性描述符May 27, 2022 pm 05:29 PM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

javascript怎么移除元素点击事件javascript怎么移除元素点击事件Apr 11, 2022 pm 04:51 PM

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

整理总结JavaScript常见的BOM操作整理总结JavaScript常见的BOM操作Jun 01, 2022 am 11:43 AM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。

foreach是es6里的吗foreach是es6里的吗May 05, 2022 pm 05:59 PM

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),