# 11.24 JS ###### tags: `Javascript`、`MFEE` 講師:張至寧 Eddy Chang 個人網站:https://eddychang.me/ 上課教材: 從 ES6 開始的 JavaScript 學習生活 (電子書) https://eddy-chang.gitbook.io/javascript-start-from-es6/ 額外講義、程式碼: https://github.com/eyesofkids/mfee11-js ## 零、目錄&待辦事項 ## 壹、建置環境、安裝node、vscode等工具 [建置環境](https://github.com/eyesofkids/mfee11-js/blob/main/%E6%95%99%E6%9D%90/1124/%E5%BB%BA%E7%BD%AE%E7%92%B0%E5%A2%83.md) * github desktop * node js (LTS版本) Chocolatey不用裝。 如何確認是否安裝node? 打開命令提示字元輸入node檢查,日後若更新就到控制台的城市管理移除掉,然後下載新版安裝 * vscode & 相關套件: 1. Chinese Package for VS Code 2. Babel JS,把語法字高亮度顯示 3. Eslint,檢查工具 4. Prettier,排版工具 5. VScode Icon,把檔案圖示更新 ## 貳、JS簡介 老實說現在看抓不到重點,要等熟悉JS再看後比較有感 [JavaScript 100%新手快速入門](https://github.com/eyesofkids/mfee11-js/blob/main/%E6%95%99%E6%9D%90/1124/JavaScript%20100%25%E6%96%B0%E6%89%8B%E5%BF%AB%E9%80%9F%E5%85%A5%E9%96%80.pdf) JS書籍介紹,你所不知道的JS,有免費英文版跟簡中版 ## 參、VS Code介面介紹、建立第一個連結JS的HTML檔 Vscode是以資料夾作為專案,所以不同的案件就開不同的資料夾。開啟不同的資料夾時,vscode就會重啟,讓終端機重新指定到開啟的資料夾。 建立HTML後,以script:src連結JS檔案。 script:src要放在body結尾前,渲染完網頁架構及CSS後,再執行互動功能才能完全顯現。 ## 肆、變數與常數 > **上課講義:** [ES6](https://github.com/eyesofkids/mfee11-js/blob/main/%E6%95%99%E6%9D%90/1124/es6.pdf) [JS保留字](https://github.com/eyesofkids/mfee11-js/blob/main/%E6%95%99%E6%9D%90/1124/JS%E4%BF%9D%E7%95%99%E5%AD%97.md) [7種資料類型、基本詞彙、物件](https://github.com/eyesofkids/mfee11-js/blob/main/%E6%95%99%E6%9D%90/1124/js-cheatsheet1.pdf) ### 一、變數 * 不要再用var來定義變數了。 * 變數用let宣告。 = 是指定、給定、賦予值的意思,而不是比較的等於。 * JS是弱資料型態的語言,所以變數的資料類型(型別)是會變化的。 ```javascript= let days = 'saturday' ``` ### 二、常數 * ES6是大幅更新的一個版本,開始有了常數(constant)的概念,常數其實是變數,只是他的值固定了。 * 常數用const來宣告。常數宣告給定值後,就不能再次給定,他的資料類型(型別)也在一開始就決定好了。 ```javascript= const omg = 1 omg = 'HELLO' // TypeError: Assignment to constant variable. omg = 2 // TypeError: Assignment to constant variable. ``` * 常數可以用於物件或陣列的宣告,因為指定的是「地址」(記憶體位置),若住戶有變動仍不影響地址。常數也可以用於表達是的函數。 * 要檢測某個變數是否為陣列,要使用Array.isArray(x),用typeof(x)會顯示出是物件。 ```javascript= const seatNumber = [1, 5, 7, 10] const seatNumber = [1, 2, 7, 10] // Uncaught SyntaxError: Identifier 'seatNumber' has already been declared const seatNumber[1] = 2 // 這樣寫才OK~ ``` ### 三、撰寫習慣 * 優先使用常數 * 若確定值會變化,就宣告變數 * 一開始宣告變數時,就直接給定一個值。 如果不確定的話,數字類型就給0、字串就給''(空字串)。 * 若不確定變數類型,就給null。 ## 伍、 ## 陸、 ## 柒、 ## 捌、 ## 玖、 ## 拾、