资讯专栏INFORMATION COLUMN

前端背景知识查漏补缺

incredible / 3496人阅读

摘要:提交内容可以是一个提议想法初步描述该阶段是对所提交新特性的正式建议。在这个阶段需具备以下条件指定一名成员作为审阅通过有实现的或者初步编写标准,包括问题描述解决方案示例语法语义关键的算法及抽象实现在的复杂度等该阶段是会出现标准中的第一个版本。

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(ECMAScript) 语言标准历史及标准制定过程介绍- IT笔录

有用资源

ECMAScript compatibility table

tc39

Can I use... Support tables for HTML5, CSS3, etc

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/52091.html

相关文章

  • 前端背景知识查漏补缺

    摘要:提交内容可以是一个提议想法初步描述该阶段是对所提交新特性的正式建议。在这个阶段需具备以下条件指定一名成员作为审阅通过有实现的或者初步编写标准,包括问题描述解决方案示例语法语义关键的算法及抽象实现在的复杂度等该阶段是会出现标准中的第一个版本。 ECMAScript 与 JavaScript ECMAScript 是一套脚本语言的规范,内部编号 ECMA-262 该规范由 Ecma(Eu...

    developerworks 评论0 收藏0
  • 查漏补缺 - 收藏集 - 掘金

    摘要:酝酿许久之后,笔者准备接下来撰写前端面试题系列文章,内容涵盖浏览器框架分钟搞定常用基础知识前端掘金基础智商划重点在实际开发中,已经非常普及了。 这道题--致敬各位10年阿里的前端开发 - 掘金很巧合,我在认识了两位同是10年工作经验的阿里前端开发小伙伴,不但要向前辈学习,我有时候还会选择另一种方法逗逗他们,拿了网上一道经典面试题,可能我连去阿里面试的机会都没有,但是我感受到了一次面试1...

    YuboonaZhang 评论0 收藏0
  • CSS查漏补缺

    摘要:错误的原因是选择器的权值不能进位。第一个值设置宽度,第二个值设置高度,如果只设置一个值,则第二个值会被设置为。 css样式优先级 !important > 内联样式 > ID 选择器 > 类选择器 = 属性选择器 = 伪类选择器 > 标签选择器 = 伪元素选择器 在学习过程中,你可能发现给选择器加权值的说法,即 ID 选择器权值为 100,类选择器权值为 10,标签选择器权值为 ...

    FrancisSoung 评论0 收藏0
  • 【面试篇】JS基础知识查漏补缺

    摘要:因为在页面加载完成后,引擎维护着两个队列,一个是按页面顺序加载的执行队列,还有一个空闲队列,使用定时函数就是将回调函数加入到空闲队列中,故和其他定时器是并发执行的。 1.window.onload和$(document).ready()的区别: ①执行时间:window.onload会在所有元素,包括图片,引用文件加载完成之后执行,而$(document).ready()则会在HTML...

    myeveryheart 评论0 收藏0

发表评论

0条评论

incredible

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<