(摘要)陳鍾誠老師的JavaScript課程(1)

課程簡介

  1. 課程地圖:主要將學習到如何以Javascript語言為主、C/R/CSS/HTML等其他語言為輔,實現不同領域的程式。
  2. code.org 1 小時學程式:簡介程式設計的魅力,並以組合不同功能的圖塊培養撰寫程式碼以達到特定功能的概念。

  3. 為何寫程式?:我認為該投影片的主題比較接近"如何學習寫程式",其指出(1)勇於實踐而非只是讀書、(2)精確理解問題,並將大問題拆解為多個小問題一一解決、(3)偵錯時注意錯誤訊息所給的提示、(4)勇於尋求幫助。

語言基礎

JavaScript 與 Node.js 的基本用法

  1. node.js是 Ryan Dahl 基於 Google 的 V8 引擎所完成的JavaScript 開發平台,主要被用來寫網站。
  2. javascript的變數型態包含了三種基本型態Number、String、Boolean,以及兩種複合型態Array、Object。

JavaScript 的流程控制

  1. 流程控制包含了if、while、for。
  2. 使用==和!=判斷兩個物件的相等時,不考慮兩者的變數型態;使用===和!==判斷兩個物件的相等時,考慮兩者的變數型態,較為嚴謹。
  3. 簡介了空陣列、一維陣列、多維陣列以及Dictionary物件(所包含的資料以key-value的形式兩兩一組,屬於Object變數型態的一種)的宣告方式

JavaScript 的陣列與字串

示範了陣列和字串的基本運算子(operator)、常用函式的用法。

JavaScript 的函數與參數

示範了如何撰寫和使用具有參數的函式。

JavaScript 中的 JSON 字典格式

示範了Dictionary物件的value可以是Array或其他基本變數型態,而Array可以包含Dictionary,故可以多層組合形成多層的Dictionary物件。

遞迴函數

示範了遞迴函數。根據某個參數呼叫遞迴函數後,遞迴函數會更改該參數並用以再此呼叫自己,直到參數符合某個條件才回傳全部的運算結果。

匿名函數與回呼 callback

兩種函數宣告方式:(1)直接宣告函數、(2)將函數指定給每個變數,這種宣告方式形成的函數又稱為匿名函數。使用時,分別使用直接宣告函數的函數名稱或匿名函數的變數名稱,輔以函數所需的參數即可。

在Javascript中,函數的參數為基本變數型態時,採用call by value的方式傳遞(直接複製變數的值提供給函數使用,在硬體中和原本的變數放置在不同的記憶體位置,因此參數數值即使在函數內被修改,也不影響該參數在函數外的數值);為複合變數型態時,採用call by reference的方式傳遞(提供變數的記憶體位址供函數使用,在硬體中和原本的變數放置在一模一樣的記憶體位置,因此參數數值在函數內一旦被修改,也同時影響該參數在函數外的數值)。

函數可以做為參數使用。

callback就是函數被當作參數傳入後,在達成特定條件的某個時機點執行該函數參數的行為。

JavaScript 的物件導向基礎

模組、套件、版本與除錯

在javascript中,所撰寫的函式、物件可以匯出,分別等於node.js中的動態模組、靜態模組,提供給其他檔案的程式碼使用。

匯出的函式相當於類別的建構式,因此在被初次使用時,需要用new關鍵字先產生類別物件。

並介紹了可以跨平台使用的javascript模組寫法。

參考資料

  1. 課程簡介語言基礎

 

 

 

 

 

Advertisements

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s