前端背景知識查漏補缺

ECMAScript 與 JavaScript

  • ECMAScript 是一套腳本語言的規範,內部編號 ECMA-262
  • 該規範由 Ecma(European Computer Manufacturers Association) 制定
  • 規範保證開發者按照規範編寫的代碼能在大部分瀏覽器中正常工做,由於這些瀏覽器約定去遵照規範
  • JavaScript,JScript 和 ActionScript 都是基於該規範的實現
  • 閱讀 ECMAScript 規範,你知道如何創造一個腳本語言
  • 閱讀 JavaScript 文檔,你知道如何使用一個腳本語言

TC39

TC39(Technical Committee 39) 是 ECMAScript 規範的制定者javascript

規範制定的過程html

  • Stage 0: strawman

    該階段是一個開放提交階段,任何在TC39註冊過的貢獻都或TC39成員均可以進行提交。提交內容能夠是一個提議、想法、初步描述java

  • Stage 1: proposalgit

    該階段是對所提交新特性的正式建議。在這個階段需具有如下條件:es6

    • TC39指定一名成員做爲Champion
    • TC39審閱經過
    • 有實現的 Demo 或者 Polyfill
    • 初步編寫標準,包括:問題描述、解決方案示例、語法語義API、關鍵的算法及抽象、實如今的複雜度等
  • Stage 2: draftgithub

    該階段是會出現標準中的第一個版本。在這個階段必需要具有如下條件:算法

    • 更規範化語法特性和語意的說明,並使用ECMAScript標準的正式語言描述該特性的語法、語義、API
    • 該特性應該有兩個實驗性的實現,其中一個能夠基於Babel等轉譯器實現
  • Stage 3: candidate瀏覽器

    該階段的提議已接近完成,只須要獲得提議實現方的反饋,並由用戶來進一步推進。在這個階段應具有如下條件:ide

    • 編寫Test 262測試例,且至少2個用例經過測試
    • TC39指定的審稿人審覈經過
    • 開發者的足夠承認
  • Stage 4: finished測試

    該階段的會被包括到標準之中。在這個階段應具有如下條件:

    • Test 262驗收測試經過
    • 兩個符合規範的實現經過
    • TC39審覈經過
    • 開發者的支持和承認

版本命令規則使用 ECMAScript+年份 的形式

JavaScript 引擎

執行 JavaScript 代碼的程序

  • V8 in Chrome
  • SpiderMonkey in Firefox
  • Chakra in Edge

引擎決定了代碼執行的效率

JavaScript runtime

不一樣的運行環境提供了不一樣的 API,供 JavaScript 使用

W3C

W3C(World Wide Web Consortium) 是制定萬維網標準的組織

這些標準包括 CSS、DOM、HTML 等等

W3C制定標準的過程

  • Working draft / WD / 工做草案
  • Candidate recommendation / CR / 候選推薦規範
  • Proposed recommendation / PR / 提名推薦規範
  • W3C recommendation / REC / 正式推薦規範

WHATWG

WHATWG(Web Hypertext Application Technology Working Group) 是另外一個制定 HTML 及其相關技術標準的組織

WHATWG 制定的標準稱爲 "HTML Living Standard",W3C 致力於發佈一個「定稿」的 HTML5 標準,而 WHATWG 則傾向於讓標準不斷髮展,僅發佈 HTML 的當前實時版本(Living Standard)

參考資料

有用資源

相關文章
相關標籤/搜索