首先咱們來看看Eric Elliot是如何表態的,他曾說過:“我喜歡的優美代碼關鍵在于:意圖清晰,沒有多余的代碼,易于理解。”這話給我們的啟示很多,意圖明確是關鍵。按照這個原則,我們就不會寫出累贅的代碼,再加上注釋的說明之后代碼就非常容易理解了。以下代碼給出了Eric的一個例子,展示了他是如何把一些重要的思考帶入到編程中的。
function creatMyObject() { let count = 0; return { increment() { count++; }, getCount() { return count; } }; } let obj = createMyObject(); console.log(obj.getCount()); //0 obj.increment(); console.log(obj.getCount()); //1
這是Eric在《JavaScript往哪里去了》一書中的一個例子。通過這個例子,Eric 告訴我們,由于結構和面向對象的混淆,JavaScript這門語言的發展出現了一些不平衡的狀態,開發者們應該清醒地認識到這一點并且嘗試去解決它。
在Eric的博客上,他也分享了許多關于JavaScript的編程經驗和觀點。比如說,關于異步編程,他提議使用Promise,異步代碼非常常見并且在不斷地演化,Promise也是目前最流行的異步編程方法。再比如說,關于函數式編程,他認為函數式編程是JavaScript極其實用的范式,屬于強勢編程,值得深入學習。以下是Eric給出的一個函數式編程的例子。
[1,2,3,4,5].map(x =>x \* x); // [1, 4, 9, 16, 25]
此處,map是一個高階函數。它將一個函數(一個匿名函數x =>x \* x)作為其唯一的參數,帶入到數組的各個元素中去,并返回新數組。這種方式已經成為了一個模式,在ES6中,JavaScript也為Map和Reduce這些常用函數提供了原生支持,這樣開發者們就可以更加方便地處理和轉化數據了。
總之,Eric Elliot是一個深耕JavaScript和Node.js領域的專家,他不僅有豐富的工作經驗,更擁有一顆將編程與哲學相結合的思維,在他的博客上你能看到很多讓人眼前一亮的技巧和觀點。想要深入了解JavaScript的讀者不妨多多行動,從Eric Elliot的經驗中尋求啟示吧。