前言:很多人說(shuō)jquey和vue沒(méi)有什么可比的,應(yīng)該和Angular,React來(lái)比吧,我到覺得他們倒沒(méi)有多大的可比性,都是基于mvvm思想設(shè)計(jì)的框架,無(wú)非就是實(shí)現(xiàn)的方式不一樣,在不同場(chǎng)景下性能上會(huì)有一些差異。然而從jquery到vue或者說(shuō)是到mvvm的轉(zhuǎn)變則是一個(gè)思想想的轉(zhuǎn)變,是將原有的直接操作dom的思想轉(zhuǎn)變到操作數(shù)據(jù)上去,難道不是一個(gè)根本性的改變嗎?
1.jquery介紹:想必大家都用過(guò)jquery吧,這個(gè)曾經(jīng)也是現(xiàn)在依然最流行的web前端js庫(kù),可是現(xiàn)在無(wú)論是國(guó)內(nèi)還是國(guó)外他的使用率正在漸漸被其他的js庫(kù)所代替,隨著瀏覽器廠商對(duì)HTML5規(guī)范統(tǒng)一遵循以及ECMA6在瀏覽器端的實(shí)現(xiàn),jquery的使用率將會(huì)越來(lái)越低
2.vue介紹:vue是一個(gè)興起的前端js庫(kù),是一個(gè)精簡(jiǎn)的MVVM。從技術(shù)角度講,Vue.js 專注于 MVVM 模型的 ViewModel 層。它通過(guò)雙向數(shù)據(jù)綁定把 View 層和 Model 層連接了起來(lái),通過(guò)對(duì)數(shù)據(jù)的操作就可以完成對(duì)頁(yè)面視圖的渲染。當(dāng)然還有很多其他的mvmm框架如Angular,React都是大同小異,本質(zhì)上都是基于MVVM的理念。 然而vue以他獨(dú)特的優(yōu)勢(shì)簡(jiǎn)單,快速,組合,緊湊,強(qiáng)大而迅速崛起
3.vue和jquey對(duì)比
jQuery是使用選擇器($)選取DOM對(duì)象,對(duì)其進(jìn)行賦值、取值、事件綁定等操作,其實(shí)和原生的HTML的區(qū)別只在于可以更方便的選取和操作DOM對(duì)象,而數(shù)據(jù)和界面是在一起的。比如需要獲取label標(biāo)簽的內(nèi)容:$("lable").val();
,它還是依賴DOM元素的值。
Vue則是通過(guò)Vue對(duì)象將數(shù)據(jù)和View完全分離開來(lái)了。對(duì)數(shù)據(jù)進(jìn)行操作不再需要引用相應(yīng)的DOM對(duì)象,可以說(shuō)數(shù)據(jù)和View是分離的,他們通過(guò)Vue對(duì)象這個(gè)vm實(shí)現(xiàn)相互的綁定。這就是傳說(shuō)中的MVVM。