JavaScript 高階
1.學習目標
- 理解面向物件開發思想
- 掌握 JavaScript 面向物件開發相關模式
- 掌握在 JavaScript 中使用正則表示式
-
解析執行:輕量級(耦合度低)解釋型的
-
語言特點:動態,頭等函式 (First-class Function)
-
又稱函式是 JavaScript 中的一等公民
-
-
執行環境:在宿主環境(host environment)下執行,瀏覽器是最常見的 JavaScript 宿主環境
-
但是在很多非瀏覽器環境中也使用 JavaScript ,例如 node.js
-
JavaScript 的組成
-
ECMAScript - 語法規範
-
變數、資料型別、型別轉換、操作符
-
流程控制語句:判斷、迴圈語句
-
陣列、函式、作用域、預解析
-
物件、屬性、方法、簡單型別和複雜型別的區別
-
內建物件:Math、Date、Array,基本包裝型別String、Number、Boolean
-
-
Web APIs
-
BOM
-
onload頁面載入事件,window頂級物件
-
定時器
-
location、history
-
-
DOM
-
獲取頁面元素,註冊事件
-
屬性操作,樣式操作
-
節點屬性,節點層級
-
動態建立元素
-
事件:註冊事件的方式、事件的三個階段、事件物件
-
-
JavaScript 可以做什麼
阿特伍德定律:
Any application that can be written in JavaScript, will eventually be written in JavaScript.
任何可以用JavaScript來寫的應用,最終都將用JavaScript來寫
阿特伍德 stackoverflow的創始人之一
JavaScript 執行分為兩個階段:
-
預解析
-
全域性預解析(所有變數和函式宣告都會提前;同名的函式和變數函式的優先順序高)
-
函式內部預解析(所有的變數、函式和形參都會參與預解析)
-
函式
-
形參
-
普通變數
-
-
-
執行
先預解析全域性作用域,然後執行全域性作用域中的程式碼,在執行全域性程式碼的過程中遇到函式呼叫就會先進行函式預解析,然後再執行函式內程式碼。