1. 程式人生 > 實用技巧 >JavaScript 高階

JavaScript 高階

1.學習目標

  - 理解面向物件開發思想
  - 掌握 JavaScript 面向物件開發相關模式
  - 掌握在 JavaScript 中使用正則表示式

2.回顧

JavaScript 是什麼

  • 解析執行:輕量級(耦合度低)解釋型的

  • 語言特點:動態,頭等函式 (First-class Function)

    • 又稱函式是 JavaScript 中的一等公民

  • 執行環境:在宿主環境(host environment)下執行,瀏覽器是最常見的 JavaScript 宿主環境

    • 但是在很多非瀏覽器環境中也使用 JavaScript ,例如 node.js

    MDN-JavaScript

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 執行過程

JavaScript 執行分為兩個階段:

  • 預解析

    • 全域性預解析(所有變數和函式宣告都會提前;同名的函式和變數函式的優先順序高)

    • 函式內部預解析(所有的變數、函式和形參都會參與預解析)

      • 函式

      • 形參

      • 普通變數

  • 執行

先預解析全域性作用域,然後執行全域性作用域中的程式碼,在執行全域性程式碼的過程中遇到函式呼叫就會先進行函式預解析,然後再執行函式內程式碼。