菜单
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

JS 教程

JS HOME JS Introduction JS Where To JS Output JS Statements JS Syntax JS Comments JS Variables JS Let JS Const JS Operators JS Arithmetic JS Assignment JS Data Types JS Functions JS Objects JS Object Properties JS Object Methods JS Object Display JS Object Constructors JS Events JS Strings JS String Methods JS String Search JS String Templates JS Numbers JS BigInt JS Number Methods JS Number Properties JS Arrays JS Array Methods JS Array Search JS Array Sort JS Array Iteration JS Array Const JS Dates JS Date Formats JS Date Get Methods JS Date Set Methods JS Math JS Random JS Booleans JS Comparisons JS If Else JS Switch JS Loop For JS Loop For In JS Loop For Of JS Loop While JS Break JS Iterables JS Sets JS Set Methods JS Maps JS Map Methods JS Typeof JS Type Conversion JS Destructuring JS Bitwise JS RegExp JS Precedence JS Errors JS Scope JS Hoisting JS Strict Mode JS this Keyword JS Arrow Function JS Classes JS Modules JS JSON JS Debugging JS Style Guide JS Best Practices JS Mistakes JS Performance JS Reserved Words

JS 版本

JS 版本 JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS 2019 JS 2020 JS 2021 JS 2022 JS 2023 JS 2024 JS IE / Edge JS 历史

JS 对象

对象定义 对象原型 对象方法 对象属性 对象 Get / Set 对象保护

JS 函数

函数定义 函数参数 函数调用 函数 Call 函数 Apply 函数 Bind 函数闭包

JS 类

类入门 类继承 类静态

JS 异步

JS 回调 JS 异步 JS Promises JS Async/Await

JS HTML DOM

DOM 入门 DOM 方法 DOM Document DOM 元素 DOM HTML DOM 表单 DOM CSS DOM 动画 DOM 事件 DOM 事件监听器 DOM 导航 DOM 节点 DOM 集合 DOM 节点列表

JS Browser BOM

JS Window JS Screen JS Location JS History JS Navigator JS Popup Alert JS Timing JS Cookies

JS Web APIs

Web API 入门 Web 表单 API Web History API Web Storage API Web Worker API Web Fetch API Web Geolocation API

JS AJAX

AJAX 入门 AJAX XMLHttp AJAX Request AJAX Response AJAX XML 文件 AJAX PHP AJAX ASP AJAX 数据库 AJAX 应用 AJAX 示例

JS JSON

JSON 入门 JSON 语法 JSON vs XML JSON 数据类型 JSON 解析 JSON Stringify JSON 对象 JSON 数组 JSON 服务器 JSON PHP JSON HTML JSON JSONP

JS vs jQuery

jQuery 选择器 jQuery HTML jQuery CSS jQuery DOM

JS Graphics

JS Graphics JS Canvas JS Plotly JS Chart.js JS Google Chart JS D3.js

JS 示例

JS 示例 JS HTML DOM JS HTML 输入 JS HTML 对象 JS HTML 事件 JS 浏览器 JS 编辑器 JS 练习 JS 测验 JS 网站 JS 面试准备 JS Bootcamp JS 证书

JS 参考

JavaScript 对象 HTML DOM 对象


JavaScript 历史


JavaScript / ECMAScript

JavaScriptBrendan Eich 于 1995 年发明。

它为 Netscape 2 开发,并于 1997 年成为 ECMA-262 标准。

Netscape 将 JavaScript 交给 ECMA 后,Mozilla 基金会继续为 Firefox 浏览器开发 JavaScript。Mozilla 的最新版本是 1.8.5。(与 ES5 相同)。

Internet Explorer (IE4) 是第一个支持 ECMA-262 Edition 1 (ES1) 的浏览器。

Year(年份) ECMA浏览器
1995   JavaScript 由 Brendan Eich 发明
1996   Netscape 2 发布了 JavaScript 1.0
1997   JavaScript 成为 ECMA 标准 (ECMA-262)
1997 ES1 ECMAScript 1 发布
1997 ES1 IE 4 是第一个支持 ES1 的浏览器
1998 ES2 ECMAScript 2 发布
1998   Netscape 42 发布了 JavaScript 1.3
1999 ES2 IE 5 是第一个支持 ES2 的浏览器
1999 ES3 ECMAScript 3 发布
2000 ES3 IE 5.5 是第一个支持 ES3 的浏览器
2000   Netscape 62 发布了 JavaScript 1.5
2000   Firefox 1 发布了 JavaScript 1.5
2008 ES4 ECMAScript 4 被放弃
2009 ES5 ECMAScript 5 发布
2011 ES5 IE 9 是第一个支持 ES5 * 的浏览器
2011 ES5 Firefox 4 发布了 JavaScript 1.8.5
2012 ES5 Safari 6 完全支持 ES5
2012 ES5 IE 10 完全支持 ES5
2012 ES5 Chrome 23 完全支持 ES5
2013 ES5 Firefox 21 完全支持 ES5
2013 ES5 Opera 15 完全支持 ES5
2014 ES5 所有浏览器完全支持 ES5
2015 ES6 ECMAScript 6 发布
2016 ES6 Chrome 51 完全支持 ES6
2016 ES6 Opera 38 完全支持 ES6
2016 ES6 Safari 10 完全支持 ES6
2017 ES6 Firefox 54 完全支持 ES6
2017 ES6 Edge 15 完全支持 ES6
2018 ES6 所有浏览器完全支持 ES6 **

注意

* Internet Explorer 9 不支持 ES5 的 "use strict"。

** Internet Explorer 11 不支持 ES6。


ECMA 技术委员会 39

1996 年,Netscape 和 Brendan Eich 将 JavaScript 带到 ECMA 国际标准化组织,并成立了技术委员会 (TC39) 来开发该语言。

ECMA-262 Edition 1 于 1997 年 6 月发布。



从 ES4 到 ES6

当 TC39 委员会于 2008 年在奥斯陆开会讨论 ECMAScript 4 时,他们分成了两个截然不同的阵营。

ECMAScript 3.1 阵营:
Microsoft 和 Yahoo,他们希望对 ES3 进行增量升级。

ECMAScript 4 阵营:
Adobe、Mozilla、Opera 和 Google,他们希望进行大规模的 ES4 升级。

2008 年 8 月 13 日,Brendan Eich 写了一封 电子邮件

JavaScript 标准机构 Ecma 的技术委员会 39,一年多来一直存在分歧,一些成员支持 ES4,即 ECMA-262 的第四个主要版本,而另一些成员则主张基于现有的 ECMA-262 Edition 3 (ES3) 规范开发 ES3.1。现在,我很高兴地报告,分歧已经结束。

解决方案是共同努力

  • ECMAScript 4 被重命名为 ES5
  • ES5 应该是一个对 ECMAScript 3 的增量升级。
  • ECMAScript 4 的功能应在后续版本中实现。
  • TC39 应开发一个比 ES5 更宏大的新主要版本。

计划中的新版本 (ES6) 的代号是“Harmony”(因为它造成了分裂?)。

ES5 取得了巨大成功。它于 2009 年发布,到 2013 年 7 月,所有主流浏览器(包括 Internet Explorer)都完全兼容。

Chrome 23 IE10 / Edge Firefox 21 Safari 6 Opera 15
2012 年 11 月 2012 年 9 月 2013 年 5 月 2012 年 7 月 2013 年 7 月

ES6 也取得了巨大成功。它于 2015 年发布,到 2017 年 3 月,所有主流浏览器都完全兼容。

Chrome 51 Edge 14 Firefox 52 Safari 10 Opera 38
2016 年 5 月 2016 年 8 月 2017 年 3 月 2016 年 9 月 2016 年 6 月


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持