有沒有注意過 JavaScript 裡一個神奇的現象? 比如以下程式: console.log(x); 執行結果: Uncaught ReferenceErr...
早期的 JavaScript 變數只能用 var 宣告,後來 ES6 新增 let 、 const 。這篇不會細講三個宣告方式的差異,網路上很多大神已經解釋得很...
第1題. 試答: 依照提升Hoisting的觀念創造階段: var a; 執行階段: console.log(a); a = 'Hello' console...
嗨大家好,這是 bywater,今天是 JS 系列的第一篇文章。在 JS 系列中,我們會有八篇文章,介紹各個常見的 JS 面試題,會有這麼多篇幅是因為 JS...
這篇來分享一下在之前有提過的"提升 (Hoisting)",就是還被抓到打錯字的這篇 xDD【這些年我似是非懂的 Javascript】D...
本篇內容參考連結 執行環境 PJCHENder筆記 Execution Context Definition 首先了解其定義, 當JS引擎執行一...
提醒:由於看到這系列鐵人訂閱人數漸漸變多,標記一下這些內容是在「非常萌新時期」所寫,更多技術內容請參考我的 Github,歡迎跟我一起討論 ^ ^ 今天就...
作用域(scoop)簡單來說,就是變數的地盤,在地盤內,變數都有作用,出了地盤,變數就undefined了。 舉個不倫不類的例子,丐幫的幫主洪七公武功再強也沒有...
範圍鍊(Scope Chain)Def:當函式本身使用的變數不存在 就會向外層尋找(這裡的外層不一定是全域!!) 我們在前面有提到當 函式fn1 沒有 num...
Hoisting 能在宣告變數、函式、物件與其他型別前先進行使用,但是初始化並不會被提升。因為 JavaScript 分成編譯跟執行兩個階段,在編譯階段會把宣告...
function介紹什麼是function??為什麼我們一定需要function呢?? 這裡我們舉一個例子 當我們每次要計算 蛋糕與可樂數量的總價錢時便可以使用...
附上為何鐵人賽文章會出現在這裡的說明:2022 鐵人賽|Day1 報名失敗,還是要開賽吧! 背景脈絡 原本以為自己已經懂 Hoisting(提升),但今天再次接...
繼上篇提到的宣告變數與常數後,透過上篇的總結表格,來聊聊變數提升以及作用域! Hoisting 在說明 Block Scope (區塊作用域) & Fu...
學習hoisting之前可以先看上篇 直譯編譯 提升hoisting(接續上) 當執行以下程式碼時 console.log(a) var a = 10 會輸出...
提升 指「變數宣告」或是「函式宣告」會被提升到該作用域的頂端,但賦值不會被提升。也就是只有宣告會被提升,賦值不會。 變數Hoisting 範例: console...