當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
网页插件学javascript还是jquery好啊?
生活随笔
收集整理的這篇文章主要介紹了
网页插件学javascript还是jquery好啊?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章的起因,也是在群內交流是回答一個小伙的問題,一扯就停不下來,但由于個人知識面覆蓋有限,自身基礎又不夠扎實,僅供參考:
問這個問題之前,我個人建議先搞清什么是jquery,什么是js? jquery的優點:他是常用的js工具方法的一堆封裝,他在一定程度上加快前端開發的速度,會縮短項目開發周期,會減少很多代碼。 缺點:因為jquery內部做了很多細節的處理,當然最終目的是為了方便的調用。但是有些初學者誤以為,js的本來面貌就是這個樣子。用Jquery去描述業務場景,而不是試圖用代碼邏輯來解決問題。所以很多人就此對jquery造成依賴。很多提問的時候問,這個問題用jquery怎么解決。 為什么他能夠像現在如此受歡迎,成為一種事實的標準,是因為他的封裝充分考慮了開發者的習慣,在盡可能大的角度來方便開發者調用與二次開發,這是他的一個優點之一。具體體現在,類工廠鏈式方式的調用,比如: $().show().animate(),比如set,get的統一參數處理。$().css('width') $().css({ width : 200 }); 而且在早期版本兼容了低版本ie的很多bug,使開發的注意力真正的關注到邏輯與數據上來,而不是成天解決兼容問題。 其它優點不一一等等。 至于如何使用好jquery,jquery提供的方便快捷封裝在整個前端開發流程占多大的比例?為什么我們一定要建議先學js,在學習其它框架,這是我們要搞清楚的。 1. 其實如何使用好jquery,取決于原生js的基礎,什么是原生js的基礎: 比如:js語句后面到底用不用加分號,不用加分號時在哪個地方有坑? js里邊單雙引號是否有區別,他的標識名命名規則是怎么樣的,為什么prototype與jquery都取$為他的工廠函數標志?如果你將來寫一個,還有沒有其它符號可用? js里邊保留字,關鍵字,有哪些?each與普通的for循環有多大的區別,他的好處在哪里,他的壞處在哪里,我們什么時候該用他,什么時候不該用他,等等。 還有高級的,如何實現一個類的繼承,如果用jquery方便的繼承,什么閉包,閉包的優缺點,什么是事件代理,代理的優缺點。等等 上面的這些知識,在任何一個jquery相關書籍里邊提的不多,而這些恰恰是一個js初學者必須掌握的。 以下圖片來自:http://m.oschina.net/blog/1754261.JavaScript數組
2.JavaScript 函數基礎
3.Javascript 運算符
4.JavaScript 流程控制
5.JavaScript 正則表達式
6.JavaScript 變量
7.JavaScript 字符串函數
8.DOM 基本操作
2. jquery在整個開發過程中充當了一個方便操作dom的工具方法集合,而前端開發除了操作常用的dom之外,還需要操作頁面的交互數據,模塊化開發,工程師發布等等。夸張點說:jquery只是前端開發中的一個部分,他沒有任何一處能力完全取代原生js。而且我們需要了解的還有很多,具體見下文。 前面從個人的角度介紹了一下什么是jquery,然后什么是js,百度很多,不一一介紹。 3. 只有在學好原生js的基礎上,才能很多的學習jquery或其它框架。因為jquery與其它框架出現的初衷就是加快js開發,粗暴的理解,他對常用的js開發函數進行了封裝,所以js功底扎實,基本看api及說明就能很快的入手,這也是jquery及其它框架歡迎的根本。 然后個人建議:先學原生js,再學jquery,然后有空學習jquery源碼,才能更好的使用jquery。 然后問題來了,除了jquery之外還有什么值得學習的主流js框架? jquery 主要戰場還是在dom操作這塊,順帶封裝了ajax或其它的常用方法。 其它經典懷舊的幾個有空的時候可以了解一下他們的源碼,mootools, prototype.是他們啟發了js向工程化,團隊化,協作化方向發展的轉變, yui雖然聽說停止開發了,但他的代碼思想與那些yahoo jser付出,努力的結晶是值得我們學習與默拜的。 除了jquery之外,ext是一個巔峰,需要了解一下。他是初期企業級UI框架解決的一個鼻祖,從一定程度上解決了當時企業級應用的復雜界面交互,但是后來由于界面風格的單一化或本身一些性能問題,而被一些開發者棄用。 其它類ext的比如:easyui, lightui, j-ui, 這幾個,并沒有真正意義上顛覆或超越ext,但在天朝本地化或語言或自身業務模式上有了一定的微創新或發展。 由于隨著前端交互或數據的提高,對前端的依賴也是越來越大,這樣前端的代碼也是越來越多,這樣的場景下就需要一個能解決代碼塊與塊之間的調用,多塊的代碼加載,等等這些問題的框架出現。這時候requirejs,seajs填補了這2個空白。 然后核心的模塊解決了,塊與塊的問題解決了,就剩下打包發布了,最近業界有這三個東西做這方面的工作。 grunt, gulp,fis。 又隨著前端代碼的越來越復雜,不得不出現了javascript mvc的解決方案: angularjs, backbone,underscore, 有空的時候了解一下。 移動端的幾個需要了解一下,jq mobile, zepto.knockout,swipe,iscroll 還有一些劍走偏峰的作品比如:three.js,d3.js,famo.us, 還有一些國內jser的貢獻,團隊或個人的都有。比如qwrap, avalon,wind,kissy,還有一個百度的七巧板,騰訊的jx, 還有其它的如vue.js, lightbox, artDialog, mydate97。 最后: 正是這些好用的不好用的,好玩的不好玩的,構建了這幾年來前端五彩繽紛的世界,無論從那一處下手,都能找到好玩的一處。也是正因為如此,所以有很多新人加入這個行業的原因或動力。所以,堅持就是勝利,我為我的選擇努力,我為我的努力堅持,我為我的堅持一直在期待。前端開發qq群:159758989 ,禁止閑聊,非喜勿進~!
總結
以上是生活随笔為你收集整理的网页插件学javascript还是jquery好啊?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用CSS伪元素制作箭头
- 下一篇: 【转】JCR期刊分区及其检索方法