前端背景知识查漏补缺

ECMAScript 与 JavaScript

  • ECMAScript 是一套脚本语言的规范,内部编号 ECMA-262
  • 该规范由 Ecma(European Computer Manufacturers Association) 制定
  • 规范保证开发者按照规范编写的代码能在大部分浏览器中正常工作,因为这些浏览器约定去遵守规范
  • JavaScript,JScript 和 ActionScript 都是基于该规范的实现
  • 阅读 ECMAScript 规范,你知道如何创造一个脚本语言
  • 阅读 JavaScript 文档,你知道如何使用一个脚本语言

TC39

TC39(Technical Committee 39) 是 ECMAScript 规范的制定者

规范制定的过程

  • Stage 0: strawman

    该阶段是一个开放提交阶段,任何在TC39注册过的贡献都或TC39成员都可以进行提交。提交内容可以是一个提议、想法、初步描述

  • Stage 1: proposal

    该阶段是对所提交新特性的正式建议。在这个阶段需具备以下条件:

    • TC39指定一名成员作为Champion
    • TC39审阅通过
    • 有实现的 Demo 或者 Polyfill
    • 初步编写标准,包括:问题描述、解决方案示例、语法语义API、关键的算法及抽象、实现在的复杂度等
  • Stage 2: draft

    该阶段是会出现标准中的第一个版本。在这个阶段必须要具备以下条件:

    • 更规范化语法特性和语意的说明,并使用ECMAScript标准的正式语言描述该特性的语法、语义、API
    • 该特性应该有两个实验性的实现,其中一个可以基于Babel等转译器实现
  • Stage 3: candidate

    该阶段的提议已接近完成,只需要得到提议实现方的反馈,并由用户来进一步推动。在这个阶段应具备以下条件:

    • 编写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)

参考资料

有用资源

上一篇:JavaScript 社区由一个库引发的“smoosh门”事件到底怎么回事?


下一篇:去参加了十四届D2前端大会~