6 貼文 包含標籤 "javascript"

觀看所有標籤

TypeScript 10分鐘快速入門

TypeScript 是一個以 JavaScript 語言為基礎,所延伸出來的另一種超集的程式語言,也就是說 TypeScript 涵蓋了幾乎目前 ECMAScript 標準的新式語言範圍,並額外加了許多關於資料類型的預先定義與相互檢查部份。

學習 TypeScript 需要有對新式的 ECMAScript 的一定熟悉程度才能相得益章、共取其利,不然只是讓你的學習之路備感艱難。

理解ES6中的暫時死區(TDZ)

Temporal Dead Zone(TDZ)是 ES6(ES2015)中對作用域新的專用語。TDZ 名詞並沒有明確地寫在 ES6 的標準文件中,一開始是出現在ES Discussion討論區中,是對於某些遇到在區塊作用域綁定早於宣告語句時的狀況時,所使用的專用術語。

以英文名詞來說明,Temporal 是"時間的、暫時的"意義,Dead Zone 則是"死區",意指"電波達不到的區域"。所以 TDZ 可以翻為"時間上暫時的無法達到的區域",簡稱為"時間死區"或"暫時死區"。

JS中的關係比較與相等比較運算

在 JS 中的關係比較(Relational Comparison)運算,指的是像x < y這種大小值的關係比較。

而相等比較,可區分為標準相等(standard equality)比較x == y與嚴格相等(strict equality)比較x === y兩大種類。嚴格相等比較會比較左邊與右邊運算元的資料類型,值相等比較則只看值,簡單的來說是這樣解釋沒錯。

JS中的 {} + {} 與 {} + [] 的結果是什麼?

在 JS 中的運算符共同的情況中,(+)符號是很常見的一種,它有以下的使用情況:

  • 數字的加法運算,二元運算
  • 字串的連接運算,二元運算,最高優先
  • 正號,一元運算,可延伸為強制轉換其他類型的運算元為數字類型

為何說setState方法是異步的

註: 2019-3-9 本文撰寫於 React Fiber 改進之前,有點時間了,不過內容仍然可以參考

在學習或使用過一陣子 React 後,你可能會發現一個在setState方法的特性,以下面這個簡單範例來說明: