当前位置: 首页 > news >正文

关于ECMAScript的相关知识点!

 成长路上不孤单😊😊😊😊😊😊

【14后😊///计算机爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】

今日分享关于ecmascript的相关内容!

关于【ecmascript】

目录:

  • 一、什么是ECMAScript
  • 二、ECMAScript与JavaScript的关系
  • 三、ECMAScript的历史背景和特性
  • 四、ECMAScript的应用场景
  • 五、ECMAScript关键字
  • 六、ECMAScript的标准

一、什么是ECMAScript

ECMAScript‌是一种由Ecma国际(前身为欧洲计算机制造商协会)通过ECMA-262标准制定的脚本程序设计语言规范。ECMAScript最初由Netscape开发的JavaScript演变而来,旨在为各种编程环境提供一致的语言规范‌。最初命名为Mocha,后来改名为LiveScript,最后重命名为JavaScript。

二、ECMAScript与JavaScript的关系

1995年12月,升阳与网景联合发表了JavaScript。1996年11月,网景公司将JavaScript提交给欧洲计算机制造商协会进行标准化,次年ECMA发布了ECMA-262标准,该标准规定了浏览器脚本语言的标准,并将这种语言称为ECMAScript。ECMA-262的第一个版本于1997年6月被Ecma组织采纳。ECMA Script是ECMA-262标准化的脚本语言的名称。尽管JavaScript和JScript与ECMAScript兼容,但包含超出ECMA Script的功能。尽管ECMAScript和JavaScript这两个术语经常互换使用,但它们实际上指的是不同的层面:ECMAScript是标准,而JavaScript是实现这一标准的语言‌。

三、ECMAScript的历史背景和特性

1、ECMAScript历史背景

1998年6月,ECMAScript 2.0版发布。

1999年12月,ECMAScript 3.0版发布,成为JavaScript的通行标准,得到了广泛支持。

2007年10月,ECMAScript 4.0版草案发布,对3.0版做了大幅升级,预计次年8月发布正式版本。草案发布后,由于4.0版的目标过于激进,各方对于是否通过这个标准,发生了严重分歧。以Yahoo、Microsoft、Google为首的大公司,反对JavaScript的大幅升级,主张小幅改动;以JavaScript创造者Brendan Eich为首的Mozilla公司,则坚持当前的草案。

2008年7月,由于对于下一个版本应该包括哪些功能,各方分歧太大,争论过于激进,ECMA开会决定,中止ECMAScript 4.0的开发,将其中涉及现有功能改善的一小部分,发布为ECMAScript 3.1,而将其他激进的设想扩大范围,放入以后的版本,由于会议的气氛,该版本的项目代号起名为Harmony(和谐)。会后不久,ECMAScript 3.1就改名为ECMAScript 。

2009年12月,ECMAScript 5.0版正式发布。Harmony项目则一分为二,一些较为可行的设想定名为JavaScript.next继续开发,后来演变成ECMAScript 6;一些不是很成熟的设想,则被视为JavaScript.next.next,在更远的将来再考虑推出。

2011年6月,ECMAscript 5.1版发布,并且成为ISO国际标准(ISO/IEC 16262:2011)。

2013年3月,ECMAScript 6草案冻结,不再添加新功能。新的功能设想将被放到ECMAScript 7。

2013年12月,ECMAScript 6草案发布。然后是12个月的讨论期,听取各方反馈。

2015年6月17日,ECMAScript 6发布正式版本,即ECMAScript 2015。

ECMA的第39号技术专家委员会(Technical Committee 39,简称TC39)负责制订ECMAScript标准,成员包括Microsoft、Mozilla、Google等大公司。TC39的总体考虑是,ES5与ES3基本保持兼容,较大的语法修正和新功能加入,将由JavaScript.next完成。

截止发布日期,JavaScript的官方名称是ECMAScript 2015,Ecma国际意在更频繁地发布包含小规模增量更新的新版本,下一版本将于2016年发布,命名为ECMAScript 2016。新版本将按照ECMAScript+年份的形式发布。

ES6是继ES5之后的一次主要改进,语言规范由ES5.1时代的245页扩充至600页。ES6增添了许多必要的特性,例如:模块和类,以及一些实用特性,例如Maps、Sets、Promises、生成器(Generators)等。尽管ES6做了大量的更新,但是它依旧完全向后兼容以前的版本,标准化委员会决定避免由不兼容版本语言导致的“web体验破碎”。结果是,所有老代码都可以正常运行,整个过渡也显得更为平滑,但随之而来的问题是,开发者们抱怨了多年的老问题依然存在。

截止发布日期,没有一款完全支持ES6的JavaScript代理(无论是浏览器环境还是服务器环境),所以热衷于使用语言最新特性的开发者需要将ES6代码转译为ES5代码。等到主流浏览器完全实现ES6特性大概需要一年左右的时间,若想一睹各代理对于ES6特性的支持情况,我们推荐大家参考由 kangax 维护的 ECMAScript Compatibility Table 。

ECMAScript 2016的制定工作已经启动,许多 草案 已被提交到委员会,包括以下这些:异步方法、定型对象、并行JavaScript、类修饰符以及observables。虽然委员会正在积极评估这些特性,但我们无法预知它们的未来,其中一些会加入到下一版规范,另一些会加入未来的其它规范,剩下的将最终被遗弃。 TC39进程 解释了新特性从开始到最终被语言采用所经历的各种阶段。

2017年6月,ECMAScript发布第 8 个版本ES.Next,这个是不稳定版本。 

2、ECMAScript特性

ECMAScript定义了脚本语言的核心语法和功能,包括解析规则、关键词、流程控制、对象初始化等。它涵盖了错误处理机制、数据类型、继承机制、内置对象和函数等。ECMAScript的最新版本是ES2023,但通常提到的ES6或ES2015指的是ECMAScript 2015版本,这个版本引入了许多新特性,如块级作用域、箭头函数、模板字符串、解构赋值、Promise对象等,极大地增强了JavaScript的功能和表达能力‌。

四、ECMAScript的应用场景

ECMAScript广泛应用于网页开发中,支持Web页面的动态表现以及为基于Web的客户机-服务器架构提供服务器端的计算能力。
ECMAScript是一种可以在宿主环境中执行计算并能操作可计算对象的基于对象的程序设计语言。ECMAScript最先被设计成一种Web脚本语言,用来支持Web页面的动态表现以及为基于Web的客户机—服务器架构提供服务器端的计算能力。但作为一种脚本语言, ECMAScript具备同其他脚本语言一样的性质,即“用来操纵、定制一个已存在系统所提供的功能,以及对其进行自动化”。

ECMAScript是ECMA标准中最著名的编程语言标准,它定义了JavaScript语言的核心特性。

五、ECMAScript关键字

ECMA-262定义了ECMAScript支持的一套关键字,这些关键字标识了ECMAScript语句的开头和/或结尾。根据规定,关键字是保留的,不能用作变量名或函数名。下面是ECMAScript关键字的完整列表:

break else new var typeof

case finally return void

catch for switch while

default if throw delete

in try do instanceof

如果把关键字用作变量名或函数名,可能得到诸如“Identifier expected”(应该有标识符)这样的错误信息。

ECMA-262的保留字

ECMAScript定义了一套保留字,保留字在某种意义上是为了将来的而保留的单词。因此,保留字不能被用作变量名或函数名。ECMA-262第3版中保留字的完整列表如下:

abstract enum int short

boolean export interface static

byte extends long super char final

native synchronized class float package

throws const goto private transient debugger

implements protected volatile double

import public

如果将保留字用作变量名或函数名,那么除非将来的浏览器实现了该保留字,否则很可能收不到任何错误消息。当浏览器将其实现后,该单词被看作关键字,如此将出现关键字错误。

1995年Netscape公司发布的Netscape Navigator 2.0中,发布了与Sun联合开发的JavaScript 1.0并且大获成功, 并且随后的3.0版本中发布了JavaScript1.1,恰巧这时微软进军浏览器市场,IE 3.0搭载了一个JavaScript的克隆版-JScript, 再加上Cenvi的ScriptEase(也是一种客户端脚本语言),导致了三种不同版本的客户端脚本语言同时存在。为了建立语言的标准化,1997年JavaScript 1.1作为草案提交给欧洲计算机制造商协会(ECMA),第三十九技术委员会(TC39)被委派来“标准化一个通用的,跨平台的,中立于厂商的脚本语言的语法和语意标准”。最后在Netscape、Sun、微软、Borland等公司的参与下制订了ECMA-262,该标准定义了叫做ECMAScript的全新脚本语言。

从此以后的Javascript,JScript,ActionScript等脚本语言都是基于ECMAScript标准实现的。

所以,ECMAScript实际上是一种脚本在语法和语义上的标准。实际上JavaScript是由ECMAScript,DOM和BOM三者组成的。 所以说,在JavaScript,JScript和ActionScript中声明变量,操作数组等语法完全一样,因为它们都是ECMAScript。但是在操作浏览器对象等方面又有各自独特的方法,这些都是各自语言的扩展。

六、ECMAScript的标准

ECMAScript标准的核心组成有以下部分:

1‌、语言核心

包括变量声明(var、let、const)、数据类型(原始类型如Undefined、Null、Boolean、Number、BigInt、String、Symbol,复合类型如Object、Array、Function)、操作符(算术、关系、位、逻辑操作符)、控制语句(if、switch、for、while、do-while、break、continue、return)和函数‌。

2‌、类和对象

对象字面量用于创建对象,类提供了面向对象编程的支持‌。

3‌、正则表达式

ECMAScript 2024引入了新的正则表达式标志/v,用于控制RegExp.prototype.unicodeSets的值‌。

相关文章:

  • 认识常规贴片电阻
  • 数学实验(方程和微分方程求解)
  • 11.4/Q1,GBD数据库最新文章解读
  • 第二十一次博客打卡
  • Prompt、Agent、MCP关系
  • Mergekit——高频合并算法 TIES解析
  • 嵌入式(C语言篇)Day10
  • DAPO:用于指令微调的直接偏好优化解读
  • 让数据驱动增长更简单! ClkLog用户行为分析系统正式入驻GitCode
  • 人工智能重塑医疗健康:从辅助诊断到个性化治疗的全方位变革
  • 物联网安全技术的最新进展与挑战
  • 深入理解仿函数(Functors):从概念到实践
  • java.io.IOException: Broken pipe \ 你的主机中的软件中止了一个已建立的连接
  • 【Python训练营打卡】day30 @浙大疏锦行
  • HarmonyOS:使用PickerController将编辑后的图片替换原图
  • GloVe 模型讲解与实战
  • 自动化测试框架搭建步骤
  • 分组背包问题:如何最大化背包价值?
  • NC105NC106美光固态颗粒NC108NC109
  • FD+Mysql的Insert时的字段赋值乱码问题
  • 内塔尼亚胡称将控制“整个加沙”,英、法、加威胁对以“制裁”
  • 著名古人类学家高星获推选为国际史前与原史研究院院士
  • 俄美元首通话超2小时,普京称愿与乌方共同起草和平备忘录
  • 国家统计局:4月份各线城市商品住宅销售价格环比持平或略降
  • 美国恶劣天气已造成至少28人死亡
  • 关税影响下沃尔玛想涨价,特朗普施压:自行承担,别转嫁给顾客