這段時間一直在使用JS進行開發,其實我挺喜歡JS的,一個主要的緣由就是自由。JS限制較少能夠容易的實現本身的一些思想。或者換種說法,就是能夠寫出極其精簡的代碼,雖然精簡不到LISP的水平,不過也相差不遠了。還有一個好處就是很容易獲得結果。在我眼裏一個合格的JS程序員應該是這樣的。jquery
首先你要熟悉JS,不須要熟悉到變態的程度,可是必定要知道其優劣,知道其長處和短處。好比JS中的==
是有一些問題的。此外要知道JS沒有塊級的做用域,固然function的做用域是存在的。知道JS和DOM的區別、知道JS的基本對象、知道JSON,以及在JS裏面怎麼把對象和JSON之間相互轉化、知道AJAX。程序員
要知道JS是如何加載運行的,如何異步的加載運行。JS中異步的種類,也是須要知道的。同時要知道回調,以及爲何要用回調。要會寫對象,可以使用字面值的方式來定義對象。chrome
會使用chrome或者firebug來查看和調試代碼,會使用console.log
而不是alert
來調試代碼。要懂基本的HTML標籤和CSS。由於若是你要寫組件的話,必定須要用到HTML標籤和CSS的,沒法迴避。必定要會用underscore,其實我喜歡JS的一個很大的緣由就是我很是很是的喜歡underscore。個人代碼裏面是沒有for循環的,由於不須要了。固然要是JS裏面有一個recur
就更好的,能夠本身實現一個。異步
此外我還以爲你起碼要了解一些DOM對象,特別是document。我對於jquery到是否是很看重,由於其實DOM也挺完善的,並且DOM的面向對象的風格很鮮明,固然引入jquery能夠抵消不少直接使用DOM的麻煩,可是我以爲仍是須要權衡這樣的必要性。調試
要知道AMD。code
最後,要知道Nodejs。對象