為什麼有很多人明明基礎都不會,卻一直在討論jQuery?

我個人是很討厭jQuery的,雖然它用起來很便捷,開發效率高。但是對於初學者,實實在在是「不好的東西」!

---------------------------------------新更,言語不適------------------------------

我個人是很討厭初學者用jQuery的,雖然它用起來很便捷,開發效率高。但是對於初學者,實實在在是「不好的東西」!

我算是一個初學者,有時候,在搜集一些知識的時候,即使各大搜索引擎指明了 「這個XX用JavaScript怎麼做」 ,搜出來的大多都是介紹或討論jQuery怎麼做。而看這些帖子、文章質量,或討論者的資質,大多也都是初學者,莫要說看過jQuery源碼,或是用jQuery純屬為了便利和開發效率的JS大牛。

但是這些人是根本不懂原理的人,只知道jQuery怎麼完成,而不知JS怎麼完成。jQuery確實方便,幾行代碼就可完成幾十行的JS,還保證兼容性。但是,它並不能帶來任何提高,一些東西的原理,JS寫的一看便知。


「我個人是很討厭jQuery的,雖然它用起來很便捷,開發效率高。但是對於初學者,實實在在是「不好的東西」! 」

你討厭的到底是jQuery 還是不知進取的初學者?

「我算是一個初學者,有時候,在搜集一些知識的時候,即使各大搜索引擎指明了 「這個XX用JavaScript怎麼做」 ,搜出來的大多都是介紹或討論jQuery怎麼做。而看這些帖子、文章質量,或討論者的資質,大多也都是初學者,莫要說看過jQuery源碼,或是用jQuery純屬為了便利和開發效率的JS大牛。 」

正如我多次表述的,用Google搜索,用英文術語做關鍵詞,搜索結果質量會有質的提高,這一點題主也要注意。

「但是這些人是根本不懂原理的人,只知道jQuery怎麼完成,而不知JS怎麼完成。jQuery確實方便,幾行代碼就可完成幾十行的JS,還保證兼容性。但是,它並不能帶來任何提高,一些東西的原理,JS寫的一看便知。」

高效+兼容,這就是實打實的提高。

在封裝DOM操作這件事上,由於它太過簡單,用jQuery與不用,實際上對看清楚原理並無多大影響。

最後總結:

1. 一個類庫能使工作量減少門檻降低,這就是很了不起了,至於使用者良莠不齊,這不是類庫的責任

2. 追求原理並不代表不用庫, 不用庫而簡單重複,也並不能使人成長

3. jQuery 背後並無太多精妙思想,堆代碼而已。用jQuery 可以讓你專註於業務代碼,總好過赤手空拳去寫兼容代碼,那麼場景合適的話還是應該用

4. 用庫的理由很簡單就是偷懶,而當你選擇不用別人的庫,最好想清楚為什麼不用


題主這是五十步笑百步。

你覺得你看到的是原理,其實你看到的也是很表面的東西。

用原生的人並不一定比用jQuery的人高明,有時候還恰恰相反。

眼界到了,你用什麼都行,哪個效率最高用哪個,眼界不到,你直接寫機器碼也是白搭!

這就好比現實中,有些人用個iPhone就覺得高人一等,殊不知,這樣的想法本身就很LOW,這樣想,層次永遠也是很LOW的。

很多新手總是在考慮用jQuery太大了,影響性能,殊不知,以他們的水平之低,還輪不到拼用不用jQuery!!!就算你不用jQuery,性能就會好嗎?說不定你寫的代碼是負優化...

有些人,代碼寫得一坨屎,還鄙視用這庫那庫的人,這種人層次很低,鼠目寸光,你用所謂原生代碼滿足了自己的虛榮心,代碼質量和用戶體驗並沒有絲毫提高,反而給項目維護帶來很大不便,亂七八糟的邏輯,只有自己寫的時候能看懂,到後來連自己也看不懂了,這種人永遠都不會明白,你是不是牛B,不在於你用的什麼工具,而在於你的眼界和思想。

當你離職後留下一坨坨shit

好的結果是你的代碼成為垃圾代碼被刪掉,後來者花時間重寫了你的代碼;

差的結果是你的代碼牽扯到的業務還挺重要,沒人能看懂你的代碼,你那一坨坨代碼一直留在伺服器上,噁心著每一個維護他的人!


這個問題的邏輯我不太明白。「為什麼有很多人明明基礎都不會,卻一直在討論 jQuery?」為啥要基礎會了才能討論 jQuery 呢?我拍照的時候不明白怎麼手動調各種參數我還不能討論傻瓜機怎麼用嗎?學習技術不是目的,用合適的技術做出夠用、好用的產品才能產生價值。

我自己在學習 JavaScript 的語法之前,也是先學著用 jQuery 寫一些簡單的功能的,只不過是用在自己的博客這樣無關緊要的地方。即使是專業做前端的,也會有不同的學習階段,你也不能要求所有人都要從看犀牛書或者 ES 標準來開始學習吧。而且不同的崗位對職業技能的要求也不同,並不是所有人都有意向或者有能力成為很專精的開發者,也許對於一些人來說學會 jQuery 對於他/她當前的工作已經綽綽有餘了。

我同樣用拍照做個類比,即使是專職照相的,也分職業攝影師、路邊照相館、派出所拍身份證照片的、拍景點二十塊錢留念照的,你不會要求每個人都從學習攝影藝術概論入手吧。

從問題的說明來看題主應該是比較追求上進的,看到別人那麼「不求甚解」還會感到厭惡。但我覺得大可不必。每個人能力不同、目標不同,只要不是你的同事把你的項目搞得亂七八糟,你費這心幹嘛呢?你現在的鄙視完全沒必要,等你學有所成,等著讓他們仰視你就行了啊。


說得好像你懂得v8是怎麼執行你寫的JS的一樣。

說得好像你懂得C++runtime是怎麼執行V8的一樣。

說得好像你懂得C++是怎麼轉換成機器碼的一樣。

--------------------------

高級語言的意義就是把程序員從繁複的造輪子工作中解放出來。

要是這個道理都沒高明白,我建議題主還是多去思考思考為什麼jQuery這種東西會出現和流行。

---------------------------

我在評論里說

原生dom操作和jQuery都是瀏覽器渲染的介面

可能有人不理解我為什麼這麼講。

當然後來想想我這麼說是不太恰當。但是你就此認為我不知道jQuery是用javascript寫的是不是就有點過分了?

不過我也不是隨便亂說的。

介面(Interface)是什麼?是約定。你和其他程序(模塊,類……)約定好了,這個動作的結果該是什麼樣子,比如返回一個值,或者在UI上做一個什麼變換,然後這個動作就不歸你管了,由其他程序去執行。

所以,jQuery操作dom算不上什麼原理,javascript操作dom也算不上原理。

這都是瀏覽器給你的dom操作介面,至於為什麼你做了個動作屏幕上的東西變了,那是瀏覽器做的事情。

區別的地方也就是兩點:

1、jQuery是在原生dom操作的基礎上封裝出來的。

2、jQuery不是瀏覽器自帶的。

可是,難道第三方介面就不是介面了?(說它是瀏覽器的介面可能不準確,因為帶有一種欽定的感覺)

題主講的Js的原理,我理解成dom渲染原理,這裡問題不大吧。

其實你用javascript去操作dom,能學到的大部分是技巧,不是原理。

因為渲染的工作是瀏覽器做的,不是你做的。

你的工作,也就是相當於給瀏覽器寫了個配置文件,告訴它我要的效果是這個樣子。

這種程度,離原理還差得遠。

我舉個例子,任何一個語言或者平台,總有一些「最佳實踐」。記住了,並且會用——這叫技巧;知道為什麼這個東西在這是最佳——這叫原理。

最簡單的,你需要反覆操作一個dom的話,最後把它保存在一個變數里——這是技巧;因為如果你不這麼做瀏覽器要反覆的查詢dom樹,做無用功,這裡只用很少的空間就換取了大量的時間——這是原理。


原生dom和jq都是api,是同一層面上的東西,只是開發效率和易用性不同罷了。個人觀點,如果jq十分流行,應該是原生dom向jq學習,而不是反過來。

原生dom雖然是官方標準,但不能叫做「基礎」,因為你就算會用原生dom,也不一定了解內核是如何渲染它的。


看你想做什麼了

想做頁面的,研究jq

想做個jq的,研究js

想做瀏覽器的,研究c

就是個社會分工不同罷了,當然十年後的職業天花板也不同

很多人把收入水平當做人生的唯一目標,你收入低就是失敗者,就該被鄙視,程序員之間不同語言的鄙視鏈一般就是這麼來的


然而新標準中對DOM的操作已經跟jquery越來越接近了。


以前(我相信現在也是)通常碼農用著jquery談論著純JS,「純」的東西有天然制高點,吃硬欺軟的碼農眼裡一個庫門檻太低「太」好用,自然歸為二流技術;以前實在離不開jQuery,不好意思奚落地太直接,現在純JS兼容性越來越好,API強了,用著純JS說著jQuery有兩種可能,一是現在總算可以大大方方奚落了,二是發現還是離不開jQuery :D

要說基礎JS和jQuery的關係,沒人能忽視JS框架對JS語言本身和DOM API的反哺。jQuery至少貢獻了許多API設計的先進理念吧。


用什麼技術不重要,重要的是能否快速、便捷、可靠地解決問題,這才是選擇技術方向的關鍵。

jQuery是一個以DOM操作為中心的類庫,裡面的sizzle選擇器引擎佔了30%左右的代碼量,主要用於兼容低版本瀏覽器(實現DOM2的querySelectorAll),使用jQuery(&<2.0版本)可以快速開發出兼容低版本瀏覽器的代碼,很適合開發簡單頁面。

但是,當面對複雜角度頁面的時候,就會發現jQuery、YUI這些類庫就顯得無力,需要不斷地進行DOM操作,數據和表現混在一起,代碼也很難做到復用和可維護。別人一直用jQuery是因為其面對的業務比較簡單,沒有使用其他技術的動力,而要快速使用其他技術,就需要有很好地javascript基礎知識。

結論:不要在乎什麼技術,應該以解決問題為導向。

個人很贊同kejun的這篇文章寫給初學前端工程師的一封信


作為一個新手,能謙虛點嗎。要學JS原理你就腳踏實地地學,等你能用所謂的JS原理解決了別人用jQuery解決不了的問題的時候,再開始鄙視會比較有說服力點。PS:看你的搜索關鍵字: 「這個XX用JavaScript怎麼做」 ,感覺你連搜索引擎都不會用。


因為 jQuery 正是一個可以跨越基礎部分,直接學習並應用的東西。


jQuery被廣泛使用在線上產品中,原因很簡單。

(1)開發效率高,比寫原生代碼快多了。

(2)不需要考慮瀏覽器兼容性問題。

(3)比較穩定,經過大量的產品和開發者的使用和驗證。

這是一個好東西,使用它利於項目。

從學習的角度來說,同學們可以看看它的源碼實現是怎樣的哈。

學習JS基礎,推薦《JavaScript高級程序設計》,我的工作雖然不是主要寫JS,但是看過之後,覺得它是一本好書。


大家都在噴樓主,我個人說個個人經歷吧,剛開始也是先接觸jquery的當自己已經熟練運用各類動態交互的時候覺得自己已經出師了,到後面接觸到angular等框架的時候發現too young,too simple。又從js,甚至java開始學起。js如同扎馬步,打架用不上,但是武林高手馬步一定扎的很穩。


計算機技術是有層次的。

舉個例子:

bootstrap -&> jQuery -&> js -&> V8 -&> C++ -&> 彙編 -&> 處理器架構 -&> 電路設計 -&> 半導體材料-&> ...

分層的好處就是讓不同層次的開發者只需要關注與之相關的幾個層次就可以高效地進行生產,而不需要過度了解底層和上層的細節。


樓主的不喜歡,就是jquery的偉大。

一個讓連js都不是很會都人,可以看著api文檔開發出性能合格兼容性良好的應用的庫,圓了多少學生小公司的夢


個人感覺,jquery能以最快的速度讓你和後端配合完成一個簡單的的小項目。

我上半年四月接觸js,大概用了三天就順利拿jquery完成了一個demo。

在對整個流程有了完整的了解之後,就可以很快地遷移到其他框架上,無非就是把每個對應的流程步驟改造成對應框架的方法。

門都沒入,何談好壞,再說,哪個做前端的沒接觸過jquery,bat之流,頁面里不還是照樣能找到jquery。

我是覺得jquery讓我很快有了興趣,有了滿足感,之後暑假學php,學angular,包括現在學python,都是參考了之前學習jquery的經驗。


我個人是很討厭初學者用jQuery的,雖然它用起來很便捷,開發效率高。但是對於初學者,實實在在是「不好的東西」!

我算是一個初學者,有時候,在搜集一些知識的時候,即使各大搜索引擎指明了 「這個XX用彙編 怎麼做」 ,搜出來的大多都是介紹或討論c 怎麼做。而看這些帖子、文章質量,或討論者的資質,大多也都是初學者,莫要說看過c編譯器,或是用c純屬為了便利和開發效率的彙編大牛。

但是這些人是根本不懂原理的人,只知道c怎麼完成,而不知彙編怎麼完成。c確實方便,幾行代碼就可完成幾百行的彙編,還保證兼容性。但是,它並不能帶來任何提高,一些東西的原理,彙編寫的一看便知。


為啥我覺得jQuery已經太底層了。。。。。。你看它封裝那些DOM操作,除了做了多瀏覽器的兼容以外,和沒封裝沒啥區別。


題主討厭的實際上是那些不思進取的人,初學者用 JQ 沒什麼不好的,庫是工具,就是為了解決問題而生的,工具的使用也是初學者的必備技能,難道阻止不思進取的人用 JQ 就能讓他變得奮發向上嗎?這是人的問題不是庫的問題。


原生的要學,但是不妨礙使用第三方的庫。


說說我的個人愚見哈,我覺得jquery的存在的確給開發帶來了很大的方便,但是同時也從某種程度限制了使用者的提升。這個問題最後落腳到還是前端入門學習路線的問題。

比如我自己,我最開始接觸前端就是HTML+CSS+jquery,其一語法簡單,其二則是應項目快速開發需求+項目用jquery.後來慢慢接觸原生JS(閉包,回調,promise,DOM操作)。我認為作為入門級前端就應該有持續學習,深究問題的能力和覺悟。

理一下我的前端路線,也希望有大神指引或者給別人一點參考╭(°A°`)╮

①入門前端HTML+CSS+jQuery,參考jquery文檔,w3cschool

②HTML5+CSS3,各類博客+慕課網

③原生JS,參考高程第三版+湯姆大叔博客

④jquery源碼分析,參考博客園avlon博客+自己翻看源碼,

⑤自動化工具,模塊化,參考項目使用gulp/grunt,LESS+SASS,seajs,AMD和CMD,參考XX入門+API+項目實踐

⑥看書提升,參考JavaScript語言精粹+精通CSS高級web標準解決方案

⑦目前:依然看書提升,參考書籍司徒正美的 JavaScript框架設計(好書),目前正在搞模塊載入器

接下來了解MV*框架,Backbone,Angular以及心理學方面的書

別問我,為什麼有這麼多的時間來看書,大四狗沒offer哭暈在廁所。。。。


前端已經很多輪子了,你何必再造一個。用jquery大多為了快速開發,以及ie下的兼容性。而在自用的cms我們用es6。所以你沒必要較勁。

存在即合理。


如果按照學習路線當然是學習js,如果要找個工作先干著,jquery這玩意兒目前在很多企業還佔據著很大的比重,先感性再理性,先用著高級點的,之後再深入研究原理


我就問問…你想要怎麼樣的提高……?

要知道js執行過程,去看解釋器源碼/文檔;要知道瀏覽器介面和行為,去看相應的引擎源碼/文檔;要知道HTTP協議細節,去看協議文檔;要工程化,去學react/angular/bootstrap之類的框架源碼/文檔……

何苦跟個改進DOM訪問體驗和改進ajax使用體驗解決兼容性問題的jQuery類庫過不去?你當然可以寫一堆getElementById/Name/TagName,但人家寫$("#id")比你短有何不妥?

JS製作為語言本身來看,壓根就沒給你那堆調用瀏覽器引擎的函數;jQuery的代碼難不成就不是js了?人家不過是把介面統一了簡化了而已。要真想學基礎,麻煩先跳出瀏覽器的框框再談,去node下跑跑js無論jQuery還是getElementByXX都不再有半毛錢意義。


這其實還是一個何不食肉糜的問題。

很多人學這些東西僅僅是混口飯吃,你還能要求什麼?


因為他們知道的就這些啊

人們總不可能討論自己完全不知道的東西吧

這也無從說起啊

起碼說明了jq普及度很好


矯枉過正了。

你給客戶做,沒有客戶會關心你用什麼技術,你只要最快的速度做出讓客戶滿意的軟體就行。

你自己做產品,沒有用戶關心你用什麼技術,你只要做出速度快,體驗好,運行穩定的軟體就行。

對技術態度嚴謹是好事,我很贊同,如果是技術進階,覺得自己的輪子更好,比如很多程序員都有自己的代碼庫,前端自己寫輪播插件,後台自己寫工具庫。但是項目中需要的不光是技術,還要權衡進度,穩定性,開發團隊技術特長。

我可以說一個極端的情況,Java 做商城,如果都用原生的,簡直生不如死!


為什麼有很多人明明不知道一行js代碼下去電路那邊到底發生了什麼,卻一直在討論【為什麼有很多人明明基礎都不會,卻一直在討論jQuery】?


為什麼很多人機器語言都不會,卻在討論編程?什麼java c Python,都是封裝好的,沒有兼容性問題,你知道用01怎麼寫嗎!

題主啊,我們學習更內核的東西,是為了解決「不學習這些就完不成的想法」,不是為了學習而學習。如果jQuery能解決他們的想法,並且讓他們做出用戶用著舒服的產品,那他們學jQuery就夠了。


在適合的地方用適合的東西,不要為了討厭而討厭

在了解一個東西之前不太帶太多的感情色彩,你說你討厭 jQuery,但是你討厭的是它的什麼?

都是工具而已


觀點1: 個人認為,對於初學者來說,jQuery 是最好的東西之一。

對於初學者的學習,關鍵是培育興趣,所以入門必須簡單,當興趣培育出來後,漸漸深入才行。如果入門的時候,困難重重,直接打消了學習興趣,那麼就停止學習了。

沒有jQuery,就沒有那麼多人學習如何使用JavaScript,JavaScript也不會像現在這樣活

觀點2: 學習jQuery就是在學習JavaScript

試圖割裂jQuery和JavaScript的關係,就是在耍流氓,秀優越。

jQuery那點沒有用到JavaScript的知識了?那點沒有用到JavaScript語法了?你只要把JavaScript語法寫錯,jQuery立刻停止工作。jQuery的語法知識JavaScript的一個子集,怎麼反而變成的原罪?

jQuery不但大量使用了JavaScript最優秀的部分,還普及了以前JavaScript編程中很少用的修行概念。如今經過jQuery普及了了這些概念,反而指責jQuery把人帶壞了?

在jQuery之前,有多少人會用回調函數寫JavaScript?多少人知道還有鏈式編程的?又有多少人知道Promise的?有多少人會正確使用this這個關鍵字的?

通過jQuery學習JavaScript不失為一個很好的途徑和入門

觀點3: JavaScript學習重點之一,就是學習如何調用各種API

JavaScript是語言,jQuery是庫。JavaScript語言的學習除了語法本身,重點就是如何使用各種API。

對於DOM和AJAX的操作,原生API可以操作,jQuery的API也可以操作,而且更好,代碼更少,兼容性更佳。這個時候,原生API只要了解一下即可,編程時候讓jQuery代理,這樣本來就是最優的開發策略。當然如果你追求執行效率,使用場景少,使用原生API;如果你使用場景多,執行效率其次,那麼使用jQuery。這也是一種開發策略。

但無論你用那種策略,都是調用API,沒有優劣。你真能使用原生API編程,並不代表你有多少優秀,並且使用原生API編程最終造成的問題反而更多(兼容性,代碼可讀性,跨平台性和可維護性)。

在JavaScript的世界裡面,優秀庫越來越多,原生API的庫學也是學,優秀庫的API學也是學,沒有太多高低之分。在學習API使用的過程中,關鍵是學會如何根據自己的需要選擇庫,查找自己應該使用的API

觀點4: JavaScript語言學習,重點不應該在DOM和AJAX的操作上。

單單把JavaScript和jQuery列出來,說明題主把JavaScript就當作一個DOM和Ajax操作器了。這也是非常可悲的,題主笑別人使用jQuery,更本就是50步笑100步而已。

當你在伺服器端使用JavaScirpt的時候,原生的DOM操作的API就全部消失了,當然jQuery也基本上失去功能了,在伺服器端,更本沒有他們的事情。但是JavaScript語言本身的特性卻大放光彩,比如鏈式操作的寫法,簡單的非同步操作寫法,回調函數,類的定義等等。JavaScript的特性,才是JavaScript真正應該掌握的。至於API,用了再查好了。

所以說題主應該再多理解理解JavaScript是幹什麼的,jQuery又是幹什麼的。這樣再回過頭來看看自己的題目是不是合理


jQuery是用來養家糊口的,有餘力才會學原生Js。


一句話概括:對於你的問題,其實只是所謂倖存者偏差造成的。真正想要深入框架或者語言的人,大都自己查資料文獻解決,只有不想深入的,才多提這種問題。

其實,主要是計算機整個體系過於複雜,所以需要封裝。在你需要跨過不同層時,你需要切換一個思維甚至語言去了解新的實現。

當你發現jQuery實現一些非常罕見的功能,你自然要看看ECMAScript規範。

當你發現通過ECMAScript一些特性,比如實現組合子造成解釋器爆棧或者內存泄漏時,你自然有看V8源碼的權利。

當你發現V8在不同C++編譯器上表現性能不同時,你自然可以看看Clang的parser和optimizer的實現。

當你為了跨平台編譯而有一些問題時,你也有用到LLVM backend看8086和MIPS的ASM的時候。

沒有不需要,只有你願不願意。作為學生在你可以選擇你的前進步伐以及深度,作為所謂項目工作,能解決問題就行。


因為如果你只是想用而已,jq不需要基礎……


No, 題主, 你錯了,

本人就用jQuery,挑戰各種應用的庫和框架,

注意,排除 : d3, cocos2d這樣的框架......


但是這些人是根本不懂原理的人,只知道jQuery怎麼完成,而不知JS怎麼完成。

造句:

但是這些人是根本不懂原理的人,只知道JS代碼怎麼寫,而不知V8引擎怎麼執行JS。

但是這些人是根本不懂原理的人,只知道代碼怎麼寫,而看不懂01010101。

但是這些人是根本不懂原理的人,只知道代碼怎麼寫,而不知怎麼組裝電腦怎麼修電腦。


鑽木取火都不會,好意思用打火機點煙么?


因為有些人認為易用就代表low,難用代表高端。

他們搞不清楚一件事:會躲坑走只代表你曾經掉坑裡又爬出來過,不能代表能力什麼的。如果有一種新語言把坑都填上了,那之前學到的躲坑的「能力」就完全沒意義了。

有的人看到後來者走著平坦的大路追上了自己,心裡很不平衡,這種心理失衡體現到觀點上,就是:走平坦的大路走久了容易讓人喪失越野的能力,所以還是有坑的舊路好。在他們看來:路不是用來方便出行的,是用來磨練能力的,這種病情我稱之為受虐成癮優越感綜合症。

因為有這些錯誤的認識存在,所以接地氣的編程語言(或框架)都躺在編程語言歧視鏈的最底端。比如:php、易語言被歧視得體無完膚。


『『我知道車很快很有效率啊,但是就是很討厭那些不知道怎麼製造車的人開車,討厭~『』


.....我感覺,這就是個學習路線的問題。應該沒什麼好挑剔的吧。

我個人第一本前端向的書籍是《鋒利的jQuery》,當時我連getElementById都寫不利索,所以一慫就去整jQuery了。而且會jQuery至少能保證找到份工作以至於餓不死(我當時真就是這麼想的...)。

更何況如果對技術有情懷,總會有個契機讓你重新深入基礎的。所以算是殊途同歸。

另外,不是每個Web Developer都是前端,jQuery 勉強可以算是一種internal DSL,而DSL被發明的目的就是儘可能簡化代碼,降低噪音,從而讓開發者更關注問題的本身,也可以讓一些不了解兼容性、細節實現的人,卻可以享受到客戶端代碼帶來的收益。從這些角度來看,你說的不正說明了它存在的價值以及其設計的成功么。

1.不懂JS,所以就不能用jQuery

2.jQuery源碼全部瞭然於心,那我還用jQuery幹嘛?

你就不覺得這是悖論嘛....


程序員難得找個老少皆宜、不高不深、應用範圍廣的技術話題,活躍一下咋了?


我覺得是一些程序員對技術沒有什麼追求,或者說不熱愛,所以是淺嘗輒止。


想起一句話,貌似也是知乎上某前輩說的:

談論下司馬遷,也要先割個JJ么……


dom和 js多少人這個都區分不了 談基礎? 說的好像dom操作的好 就懂js一樣


DOM API 和 BOM API 本來就不屬於 JavaScript 語言。

題主自己連語言和環境都分不清楚。

而且這些介面設計的確實爛。

估計題主也就會一個 XMLHttpRequest,估計連 windows.fetch 或者 navigator.sendBeacon 都沒聽說過。

追求本質並沒有什麼問題。

但追求本質並不等於反對先進生產力。


樓主在知乎上問的問題前了解過知乎的底層架構、數據存儲機制嗎?知道知乎的法務工作室怎麼和微信微博溝通的嗎?知道知乎的一年營收是多少嗎?


為什麼有的人連彙編都不會,卻一直在討論Javascript?

為什麼有些人連數字電路模擬電路都沒學過,卻一直討論彙編?

為什麼有的人連基本的物理學都沒學清楚,就開始畫電路板說著什麼模擬電路數字電路?


三年前夏天我換的那份工作,那之前完全不會js,入職之後買了本『鋒利的jQuery』,下班看上班看,沒多久,不說很厲害,公司的業務基本沒什麼問題了。

你問我js原生怎麼樣,到現在也不怎麼樣,但是jq讓我實實在在的提高了工作效率,尤其是要與後端合作的情況下,有一個統一的東西工作起來效率還是更高一些。

--修改 開始--

-- 2015-10-15 10:14:12 --

當然後來也買了一些講基礎的書在看。

--修改 結束--

幾年下來也接觸過習慣寫原生的,但是誰能告訴我,$("#id").innerHTML="123";是個什麼鬼?


我個人是很討厭初學者用『洗衣機』的,雖然它用起來很便捷,洗衣服效率高。但是對於初學者,實實在在是「不好的東西」!

我算是一個初學
者,有時候,在搜集一些知識的時候,即使各大搜索引擎指明了 「這個衣服用手洗怎麼做」
,搜出來的大多都是介紹或討論用『洗衣機』怎麼洗。而看這些帖子、文章質量,或討論者的資質,大多也都是初學者,莫要說看過『洗衣機』內部結構,或是用『洗衣機』純屬為了便利和開發效率的專職主婦。

但是這些人是根本不懂原理的人,只知道『洗衣機』怎麼完成,而不知手洗怎麼完成。『洗衣機』確實方便,按幾個鍵就能解決手洗好幾個小時的工作,還能甩干。但是,它並不能帶來任何提高,洗衣服的原理,手洗的一看便知。


我就google了一下,並沒有出現題主所說的情況呀~

https://www.google.com/#newwindow=1q=%E8%BF%99%E4%B8%AAXX%E7%94%A8JavaScript%E6%80%8E%E4%B9%88%E5%81%9A


營養學都不懂你都敢做飯


樓蓋高了,不用天天打地基了。

工作嘛,分工協作而已。

搬磚的看不上刷牆的?有意思么


題主你這不是一個程序員該有的樣子,想知道原里的人自然會知道!

要提自然就能提高

關jq什麼事


先知其然,再知其所以然。其實也不是什麼壞事情。

每個人,不是都先學人體構造,運動力學等等之後才去學走路的。


前幾天我和一送盒飯的在躲雨的時候一起討論大爆炸,黑洞和相對論以及中國經濟發展方向。


用輪子a造出了輪子b,然後嫌棄輪子b?

什麼邏輯?

你認為是基礎的輪子a也是個輪子,你怎麼就不嫌棄?

既然是初學者,請你先去認真學習好嗎?比較這個有意義嗎?

還是先去研究一下宇宙起源?


題主你會製冷么?


反對新手用jq,它導致了更多不思進取的新手出現,長期看對個人和行業都不利。學習原生,適當用jq才合理。我是唯一一個不噴題主的?


看大家都在噴樓主,我也來噴兩句吧!樓主說很討厭jq就是因為他對新手真不是個好東西!我都笑了,jq這麼好的庫,你討厭就是因為覺得別人討論jq就都不懂原理!編輯器,庫,集成,各種工具庫,哪個東西出世不是為了快捷開發解決難題,新手用jq沒問題吧!真心喜歡編程的自然會去學,不是的也許人家只是為了養家糊口找份工作!而且jq之父也很推薦新手學jq容易上手,是不是你比jq之父還要牛逼的多!我也是開始js兼容寫不好用的jq之後再去看源碼去看的js。不懂原理還就不能討論jq了?


因為自己不想認真學習和了解一門技術,就只知道撿現成的。

別人要自己寫點啥,那些人張口就問,你能解決什麼什麼問題嗎,你能實現什麼什麼功能嗎?

關鍵,如果自己不去嘗試怎麼可能知道自己實現不了呢?

尤其那些鄙視重複造輪子的,整天就知道拿著別人的東西說自己如何高大上,卻不是的其他人造的輪子也有從粗糙到精緻的一個過程,也有一個從簡單到複雜的過程。自己不經歷幾次重複製造輪子的過程,一輩子只能用別人做好的東西做所謂的二次開發,而且這種所謂的二次開發未必能像他們自以為的那樣能夠不考慮兼容問題,最終他們還是會因為自己沒有經歷過所謂的重造輪子而無法繼續他們的工作。

當然,他們可以換個插件,最後結果就是,他們做出的網站永遠只有別人的插件,而沒有自己寫的代碼。


像樓主你這樣的智障上什麼知乎


工作為重把,畢竟在工作上簡單粗暴的東西都是好的,沒有人關心你用的社么技術,只要能夠達到效果就可以了


jQuery對前端來說至少是人人都會用的一門通用技能了,有誰沒用過么?


推薦閱讀:

jQuery 解決了怎樣的問題?
如何學習jQuery?
jQuery 為什麼要劃分.bind()和.live()?

TAG:前端開發 | JavaScript | jQuery |