本篇系列文為《You Don't Know JS》的讀書筆記,並搭配其他補充資料,寫下自己對這門語言的理解。
作為前端工程師,JavaScript 的各種實作細節是無法避開的課題,在一次次閱讀各種文件和文章,加上工作中累積的實作經驗,也算是對 JavaScript 建立起了相關的知識體系。於是就想藉著這次讀書筆記的機會,來和大家分享我所知道的 JavaScript。
所以說......就是要搞懂 JavaScript 啦!之前搞不懂的、一知半解的、模模糊糊的,這一次通通給他弄懂!
+ 是 JS 中的一個一元運算子,除了在數學中表達加號以外,也作為字串的連接運算子。當運算元型別不同時,會按照情況作出強制轉型。 即便 + 運算子在字面上沒有...
數學運算 - 、* 和 / 都是專屬於數學計算的運算子,因此會將運算元強制轉型為 number。 首先來看看 - 號運算子,它與 + 號運算子的邏輯十分相似:...
轉為 Boolean 明確強制轉型 boolean 的明確轉型主要有以下兩種: Boolean() 函式 ! 與 !! 運算子 Boolean() co...
寬鬆與嚴格相等 JS 的相等比較有兩種: 寬鬆相等 使用 == 運算子 如果兩者型別不同,比較時「會執行」強制轉型 嚴格相等 使用 === 運算子 比...
JSON.stringify JSON.stringify 能夠將一個值序列化為與 JSON 格式相容的 string,但它和強制轉型的規則有所不同,並不是單純...
將字串「解析(parsing)」為數字的型別轉換,與使用 Number() 的強制轉型行為有所不同,以下說明 parseInt 與 parseFloat 兩種方...
單線程的 JS 在進入異步(Asynchronous),或稱非同步之前,需要了解 JS 的一部分底層邏輯。最大的核心重點就在於,JS 引擎是單線程/單執行緒的(...
所謂的回調(callback),就是作為參數被傳遞的函式,函式並非在當前環境調用,而是被傳遞到另一個執行環境中,在該環境執行的函式。由於異步需要跳出當前線程(t...
(保證)一個未來的值 ES6 新增了 Promise 物件,它本身的功能是取得一個「未來的值」,也就是執行異步以後「保證(Promise)」會返回的答案,不論異...
理解完 Promise 物件以後,這裡來看看 Promise 擁有的幾種方法,並在本文中分別介紹它們: Promise.all() Promise.ra...