3分钟搞懂:JavaScript 和 ECMAScript

2023-11-13

JavaScript 和 ECMAScript

ECMAScript 是 JavaScript 语言的国际标准,JavaScript 是 ECMAScript 的一种实现(Adobe ActionScript 和 JScript 同样实现了 ECMAScript)。

ECMAScript 是欧洲计算机制造商协会 ECMA(European Computer Manufacturers Association)发布的浏览器脚本语言标准。它是 262 号标准文件,又叫 ECMA-262。

ECMAScript 定义了语言在语法、类型、语句、关键字、保留字、操作符、全局对象的规范。

JavaScript 并不仅限于 ECMAScript。在浏览器中,JavaScript 包括 ECMAScript、文档对象模型 DOM、浏览器对象模型 BOM。

日常工作中认为 JavaScript 和 ECMAScript 是同义词,也懒得做区分了。

ES5 和 ES6

这主要是 ECMAScript 版本命名方式的改变。

一开始 ECMAScript 使用版本号进行命名,ECMAScript 1.0 称为 ES1,ECMAScript 2.0 称为 ES2。

从 ES6 开始,标准委员会决定于每年 6 月份发布新版本,并且以年份进行命名。2015 年 6 月发布了 ECMAScript 2015(ES2015),若按照版本号即为 ES6。

现在 ES6 泛指 ECMAScript 5.1 之后的 ECMAScript 标准。ES6 是个分水岭,新增了一大批特性

ECMAScript 历史版本

1997 年发布 ES1,1998 年发布 ES2,1999 年发布 ES3。ES3 是一个比较重要的节点,这个版本定义了 JavaScript 的基本语法,标志着 JavaScript 真正地成为了一门语言。

ES4 由于改动太大,过于激进、伤筋动骨,因而没有通过。后来 ECMAScript 3.1 改为 ECMAScript 5.0(ES5),在 2009 年 12 月正式发布,现在学的最多的就是这个版本,就是我们常说的 ES5。

20156 月发布 ECMAScript 6ES6ES2015)。

20166 月发布 ECMAScript 7ES7ES2016)。

20176 月发布 ECMAScript 8ES8ES2017)。

20186 月发布 ECMAScript 9ES9ES2018)。

20196 月发布 ECMAScript 10ES10ES2019)。

...

以此类推,简单来记就是:版本号 = 年份号 - 2009,两者相差 2009

有时候面试会遇到这种比较刁钻的问题,问你 ES6 是哪一年发布的。一些比较重要的版本,能记住就尽量记住吧,也算是前端必备常识了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

3分钟搞懂:JavaScript 和 ECMAScript 的相关文章

随机推荐

  • Xcode14 终于放弃了bitcode和armv7架构,还有iOS 9、iOS 10

    相信大家已经了解到了不少关于Xcode 14的新消息 什么精简安装包 按需下载功能模块 提升编译速度 更快的xib storyBoard和SwiftUI app icon 1024像素图片 Xcode 14还放弃了一些东西 1 放弃了bit
  • openssl md5

    关于 16位和32位 md5得到的是一个16字节的散列值 每个字节用16进制 0x 格式成两个字符 连起来得到一个32个字符的串这就是所说的32位 16位就是取的32位的中间段 md5 aabbccdd 32位 bf3b2290e229da
  • (海伦公式)已知三角形三条边长,求面积

    海伦公式 已知三角形三条边长 求面积 海伦公式 S p p a p b p c 其中p是三角形的周长的一半p a b c 2 以下转自百度百科 海伦公式海又译作希伦公式 海龙公式 希罗公式 海伦 秦九韶公式 传说是古代的叙拉古国王 希伦 H
  • jQuery与原生JS相互转化

    前端发展很快 现代浏览器原生 API 已经足够好用 我们并不需要为了操作 DOM Event 等再学习一下 jQuery 的 API 同时由于 React Angular Vue 等框架的流行 直接操作 DOM 不再是好的模式 jQuery
  • WSL 2(Ubuntu18.04)编译Linux内核(5.7.9)并替换掉WSL 2原有内核

    准备工作 配置库 由于编译过程中需要很多库 因此需要提前进行配置 如果编译过程中遇到的报错均在下文的报错信息中记录 准备安装的库的命令为 sudo apt get install libncurses5 dev libncursesw5 d
  • Android NDK Address Sanitizer

    文章目录 构建 运行 堆栈轨迹 二进制测试 此文章是基于官方文档 Address Sanitizer的基础上做了一些扩展说明 从 API 级别 27 Android O MR 1 开始 Android NDK 可支持 Address San
  • 华为OD机试真题2022Q4 A + 2023 B卷(Java)

    大家好 我是哪吒 五月份之前 如果你参加华为OD机试 收到的应该是2022Q4或2023Q1 这两个都是A卷题 5月10日之后 很多小伙伴收到的是B卷 那么恭喜你看到本文了 抓紧刷题吧 B卷新题库正在更新中 华为机试有三道题 第一道和第二道
  • 安装win10 和ubuntu18.04双系统时 device for boot installation的选择

    最近在笔记本上安装ubuntu18 04 电脑预装了win10 有两个盘 128G的SSD 1T的HDD win10装在了SSD上 磁盘是GPT UEFI启动模式 在HDD上压缩了空间安装Ubuntu 在安装界面上有一个 Device fo
  • Selenium - Tracy 小笔记2

    selenium本身是一个自动化测试工具 它可以让python代码调用浏览器 并获取到浏览器中加们可以利用selenium提供的各项功能 帮助我们完成数据的抓取 它容易被网站识别到 所以有些网站爬不到 它没有逻辑 只有相应的函数 直接搜索即
  • PAT乙级1052 卖个萌 (20 分)测试点123

    https pintia cn problem sets 994805260223102976 problems 994805273883951104 测试点0 Are you kidding me 中 为转义字符 要用双 表示 测试点1
  • 动态规划经典例题-最长公共子序列-python

    最长公共子序列 问题描述 题解 以问题中为例 A helloworld B loop res i j 表示 截止到B的第i个字符和截止到A的第j个字符的最长公共子序列 例如 res 2 5 2表示第2行第5列 也就是lo和hello的最长公
  • centos7 安装 bugfree3

    1 安装apache yum install httpd 2 安装mysql wget i c http dev mysql com get mysql57 community release el7 10 noarch rpm yum y
  • set的特点

    set不允许元素重复且无序 常用实现有HashSet LinkedHashSet和TreeSet HashSet通过HashMap实现 HashMap的key即HashSet存储的元素 所有key都使用相同的Value 一个名为PRESNT
  • 6. Modules

    6 Modules 如果你退出 Python 解释器并重新进入 你做的任何定义 变量和方法 都会丢失 因此 如果你想要编写一些更大的程序 最好使用文本编辑器先编写好 然后运行这个文件 这就是所谓的创建 脚本 随着你的程序变得越来越长 你可能
  • C语言--学生管理系统--(完整代码)

    本系统分成了三个文件 main c student c student h 功能 实现对班级成员的增加 删除 修改 遍历 根据成绩排序 增加 会检查 现在班级已有的人数 班级是否已满 没有学号重复检测 删除 根据学号查询 gt 删除 会判断
  • 【Java开发环境配置】1-JDK安装教程&环境变量配置(21)

    一 JDK概念 JDK 是Java开发工具包 Java Development Kit 的缩写 它是一种用于构建在 Java 平台上发布的应用程序 applet 和组件的开发环境 其中包括了Java编译器 JVM 大量的Java工具以及Ja
  • stata豪斯曼检验报错

    xsmle gdp gt cz gdzc ersan ur model sdm wmat Wzhusj hausman nolog Warning All regressors will be spatially lagged 在使用xsm
  • 转载:switch/case语句中,每个case都要加花括号

    前言 多写代码 才能发现问题 即使现成的代码 手打一遍也有收获 这不遇到一个很无语的问题 问题及原因 解决方法见以下转载内容 原创者 ChirlChen 博客地址 https blog csdn net qqmindyourwill art
  • 网络编程之网络丢包故障如何定位?如何解决?

    引言 本期分享一个比较常见的网络问题 丢包 例如我们去ping一个网站 如果能ping通 且网站返回信息全面 则说明与网站服务器的通信是畅通的 如果ping不通 或者网站返回的信息不全等 则很可能是数据被丢包了 类似情况想必大家都不陌生 针
  • 3分钟搞懂:JavaScript 和 ECMAScript

    JavaScript 和 ECMAScript ECMAScript 是 JavaScript 语言的国际标准 JavaScript 是 ECMAScript 的一种实现 Adobe ActionScript 和 JScript 同样实现了