助教統整 n 個方法幫助你寫出更好的代碼
我相信撰寫程式並沒有絕對的準則,但絕對有些常見可以權衡留意的地方。這篇文章記錄著作為助教在檢閱不同人寫的代碼的時候,留意到的一些潛在的問題……本篇文章主要是經驗的濃縮,如果要詳細的撰寫建議可以參考看看無瑕的程式碼,會有更全面的說明與案例。
我相信撰寫程式並沒有絕對的準則,但絕對有些常見可以權衡留意的地方。這篇文章記錄著作為助教在檢閱不同人寫的代碼的時候,留意到的一些潛在的問題……本篇文章主要是經驗的濃縮,如果要詳細的撰寫建議可以參考看看無瑕的程式碼,會有更全面的說明與案例。
Most of the time, you won’t want to use "loose equality"; try using "strict equality" to write your code more rigorously and accurately
绝大多数时候你不会想要使用「松散比对」,尝试使用「严格的比对」将程序撰写得严谨精确一些。在绝大多数的情况下,你不会想要使用松散比对,但是在某些情况下,可能会使用它会更为便利,本篇文章将介绍相关取舍,以及你可以在什么时候使用不同的比较方式。
絕大多數時候你不會想要使用「鬆散比對」,嘗試使用「嚴謹的比對」將程式撰寫得嚴謹精確一些。在絕大多數的情況下,你不會想要使用鬆散比對,但是在某些情況下,可能會使用它會更為便利,本篇文章將介紹相關取捨,以及你可以在什麼時候使用不同的比較方式。
如果你需要大於 3 層的嵌套,代表你已經搞砸了,應當考慮重構程式碼,應當透過反轉與封裝程式來重構邏輯。這篇文章將詳細的介紹現有問題以及使用 Guard Clauses 技巧撰寫更好閱讀的代碼,也就是透過反轉邏輯的技巧來撰寫更少嵌套邏輯的程式。
為了達成最佳化網頁加載的順序,本篇文章以實際案例說明為什麼應該使用 HTML 內建的 `defer` 和 `async` 屬性,先從問題點出發再來到三種解決方案與比對,透過原生的 HTML Script 標籤屬性及能規劃腳本的加載順序。
Creating a search box from scratch, allowing input and matching existing data to display relevant content, practical exercise for JavaScript beginners.
搜寻列是普遍输入资料于 HTML 中最常用的方式之一,让我们学会如何使用它。本篇文章将会练习从无到有包含介面制作一个搜寻框,可以输入结果并比对现有资料显示关联的内容,是一个非常适合 JavaScript 新手的一道实用练习题目。
搜尋列是普遍輸入資料於 HTML 中最常用的方式之一,讓我們學會如何使用它。本篇文章將會練習從無到有包含介面製作一個搜尋框,可以輸入結果並比對現有資料顯示關聯的內容,是一個非常適合 JavaScript 新手的一道實用練習題目。
A counter is a basic exercise commonly seen in various frameworks, showcasing minimal functionality of any app. Let's recreate it using native JavaScript.
计数器是入门各大框架基本会见到的习题,可以说是任何 App 最低限度的功能展示。这次使用原生的 JavaScript 来重现该题目,并且一步一步的思考并改善结果,本篇文章将会练习制作一个具备加、减、重制功能的 JavaScript 计数器。
計數器是入門各大框架基本會見到的習題,可以說是任何 App 最低限度的功能展示。這次使用原生的 JavaScript 來重現該題目,並且一步一步的思考並改善結果,本篇文章將會練習製作一個具備加、減、重製功能的 JavaScript 計數器。
上一章節從動圖理解了非同步的概念,這一章節將會介紹如何撰寫非同步程式。從簡單的回呼函式到 Promise 再到使用 Async/Await 語法。目前知道非同步的程式實際上是透過執行環境(瀏覽器、Node.js) 所提供的 API 來達成同時間處理多件事情的。
防抖與節流是前端效能主題中必定會出現的模式,對用戶的輸入進行適當的防抖與節流處理,除了有助於提升使用者體驗之外,對開發者來說也節省掉許多潛在的資源浪費,透過實際案例還有動畫圖片一起來了解防抖與節流如何幫助我們提升程式效率。
了解單線程的 JavaScript 背後如何運作、併發處理事件背後的奧妙、拆解晦澀難懂的專有名詞。瀏覽器執行環境中的 JavaScript 是單線程的,也就是一次只能執行一件事,如此一來其他事情就都會被擱置在後,讓使用者等待。這是非常大的問題,但解決方法也非常的簡單:「不要呆呆站在那裏等!」。