如何寫出優雅的js代碼?
首先,你必須要編寫簡潔,規範,易於閱讀和可維護的代碼。其次你才要考慮的是寫複雜的應用。下面總結下我web前端工作兩年來,總結出的編寫優雅的JS代碼的一些技巧:
定義語義化,可讀性好的命名。
let str = new Date(); //bad
let toDay = new Date(); //good遵循函數的單一功能原則。
比如說綁定事件處理函數的功能,就定義一個bindEvent的函數裡面,初始化函數就定義一個init()的入口函數,這裡只做初始化的工作。使用默認變數代替短路運算
function getName(name){let name = name || " " ; } //badfunction getName(name = "jack"){let name = name;} //good函數參數,建議不要超過2個,如果超過兩個,可以用對象代替或者用ES6的對象解構去解決。
抽取出有同樣功能的函數,移除重複代碼。
能做變數緩存盡量做緩存。
減少DOM的重複操作。
避免使用暴露在整個全局作用域的全局變數。
使用ES6/ES7新特性。
(1)箭頭函數(2)模板字元串
(3)解構(4)async/awai模塊化很重要,避免在全局作用域下直接寫各種函數,可以考慮用閉包把單一功能的函數包起來。小結:以上這些規則,不是說會立刻就讓你變成一個優秀的前端工程師,但是如果一直保持這樣規範的代碼,對於你,也對於你的同事,都是有益的。至於你說怎樣才能寫出那種層次分明,思路清晰的複製應用,這個真的是一步步來的,不要一上來就想著做多大的項目,可以先學習下現在已經存在的框架或者庫的思路,比如說Jquery,react,別人是怎麼封裝,怎麼實現的,可以看看源碼先,學習一下,然後自己模仿著寫一個小型的js庫。希望對你有所幫助。
感謝邀請。首先要用好命名,要容易讀懂名稱表達的含義,然後要組織好模塊功能,最後要標註好引用來源。優化器可以壓縮格式,簡化命名,所以不必考慮格式帶來的空間浪費,要用TAB做好模塊縮進,用好注釋寫清楚用法和注意事項。
推薦閱讀:
※和密碼say goodbye,「無密碼時代」已經來臨!
※筆記本電腦怎麼連接印表機列印東西?
※科技觀察—PCB—滬電股份—2018年2季度電話會議
TAG:科技 | JavaScript | 程序設計 |