[JavaScript] 檢查 DOM 載入狀態 Document.readyState

有點經驗的前端工程師都知道需要使用 window.onload 、 addEventListener('load') 或是 jQuery 的 $(document).ready() 來確定 DOM 載入完成, 用來確保 JavaScript 不會因為找不到 DOM , 而導致程式無法運行 不過只是單單使用上面的監聽方式是不夠的,這邊分享一下實際踩雷的經驗 當今天有使用者使用你開發的套件的時候,他不一定會在一開始就會載入你開發的套件 用下面的代碼來解釋: game.js const run = () => { const startGame = document.createTextNode('活動開始嘍~

[JavaScript] JavaScript 重要觀念: By Value & By Reference

通常 初學者 在撰寫 JavaScript 腳本時,相信都有碰到過一個問題,就是有時候會 沒有辦法去掌握當前的 變數 (Variable) 現在的狀態是什麼 ?,尤其是針對 物件 (Object),的資料進行操作的時候,會發現物件內的元素不如自己的預期 下面是常見的實際案例: 可以閱讀後,去執行看看,如果執行的結果不是你預期的,那就應該認真把這篇文章看完了 let arr = [] let data = { id: 0 } for(let i = 0; i <

[Canvas] 使用 JavaScript 實作 canvas 畫筆的功能

畫筆的功能 大家都有玩過小畫家,我們可以使用小畫家的畫筆,輕鬆的畫出一些我們想要的圖案,相當的趣味也非常的方便 畫筆的功後續也演變為一些電子簽證的機制,最近剛好也碰到了一些類似的需求 決定在下方做個製作上的紀錄,下方提供了一個比較陽春的版本當作範例,也是為了方便理解他的製作方式 See the Pen Canvas 畫筆 by SkyRoxas (@SkyRoxas) on CodePen. 進入說明 HTML 架構如下所示: <canvas id="canvas"></canvas> 宣告變數 與