Docusaurus 2 介紹與使用

Docusaurus是一個產生靜態網站的工具(static-site generator,雖然官方的Github中不以這個關鍵字稱它)。它使用了 React 技術,提供快速簡易的建置、佈署與維護文件型的網站。本文提供了v2的簡單介紹與建置說明。

Node.js使用ES6 Module

Node.js可以直接使用ES6 module新語法,而不需要透過babel等編譯器,在Node.js 12(2019-04-23發佈) 版本後,支援了新的ECMAScript module(ESM)改進。13版本後可以更容易的使用 ESM 語法。

在Visual Studio Code中的React Native專案設定ESLint與Prettier

2020/7 註:請參考這個儲存庫中的更動: react-env

React Native 專案並沒有內建 eslint 模組,所以需要在專案建立後手動進行設定。有很多種設定的方式,這裡是使用 react-app 的設定值(Create React App 使用的)為基礎,以及針對 Visual Studio Code 編輯器的設定,其它設定方式可再參考最後的參考資料中的設定。

理解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 中的運算符共同的情況中,(+)符號是很常見的一種,它有以下的使用情況:

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