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

JavaScript:ES至今发展史简说

ECMAScript(简称ES)是JavaScript的标准,它的发展史经历了多个版本的迭代,以下是主要里程碑:

  1. ES1 (1997年6月):首个正式发布的ECMAScript标准,基于当时的JavaScript(由Netscape公司开发)和JScript(由Microsoft公司开发)制定。

  2. ES2 (1998年6月):对ES1进行了一些小的修订和澄清,但未引入重大新功能。

  3. ES3 (1999年12月):增加了大量的新功能和改进,例如正则表达式、try/catch异常处理、new Function()构造函数等,奠定了JavaScript后续发展的基础。

  4. ES4提案(未采纳):2007年提出了一版较大幅度的更新提议,但由于各方意见不统一,未能成为正式标准。

  5. ES5 (2009年12月):加入了严格模式、JSON.stringify和JSON.parse、getters/setters、数组方法扩展(如forEach、map、reduce等)、不可变对象(Object.freeze)、函数.bind方法等重要特性。

  6. ES6/ES2015 (2015年6月):带来了巨大的革新,包括箭头函数、模板字符串、类、模块、解构赋值、for…of循环、let/const块级作用域、Promise、Map/Set、Proxy和Reflect等。

  7. ES7/ES2016 (2016年6月):引入了Array.prototype.includesExponentiation Operator (**)async/await等特性。

  8. ES2017 (2017年6月):增添了Object.values/Object.entriesTrailing Commas in Function Parameter Lists and CallsAsync Iterators and Async Generators等。

  9. ES2018 (2018年6月):新增了Rest/Spread PropertiesAsynchronous IterationObject.getOwnPropertyDescriptorsRegExp Unicode Property EscapesPromise.prototype.finally等特性。

  10. ES2019 (2019年6月):包含了Optional catch bindingSymbol.prototype.descriptionwell-formed JSON.stringifyArray.prototype.flatArray.prototype.flatMap等新特性。

  11. ES2020 (2020年6月):增加了BigIntglobalThisPromise.allSettledString.prototype.matchAllDynamic Import等特性。

  12. ES2021 (2021年6月):包含了Logical Assignment OperatorsString.prototype.replaceAllWeakRefsimport.metaNumeric Separators等特性。

  13. ES2022 (2022年6月):新增了Class Field DeclarationsTop-Level AwaitPromise.anyString.prototype.replaceAll以及Global This的规范化等特性。

随着每年的推进,ECMAScript都在逐步完善和加强JavaScript语言的能力,以适应现代Web和软件开发的需求。

相关文章:

JavaScript:ES至今发展史简说

ECMAScript(简称ES)是JavaScript的标准,它的发展史经历了多个版本的迭代,以下是主要里程碑: ES1 (1997年6月):首个正式发布的ECMAScript标准,基于当时的JavaScript(由Netscape公司开…...

Linux:进程

进程 知识铺垫冯诺依曼体系结构操作系统(OS) 进程概念进程的查看ps 命令获取进程 pid文件内查看进程终止进程的方式kill命令快捷键 进程的创建 forkfork 返回值问题 进程状态运行状态 :R休眠状态:S (可中断&#xff09…...

【Vue3】defineExpose 实践

【Vue3】defineExpose 实践 defineExpose 是 Vue 3 的 <script setup> 语法糖中提供的一个函数&#xff0c;用于显式地暴露组件的属性、方法或其他响应式状态给其父组件或外部使用。这是在使用 <script setup> 语法时&#xff0c;控制组件公开哪些内部状态和方法的…...

centos7.9安装nacos

centos7.9安装nacos2.3.1 在centos x86_64环境安装nacos2.31环境准备 jdk1.8 、 mysql、 nacos 在window11环境安装nacos2.31 在centos x86_64环境安装nacos2.31 环境准备 jdk1.8 、 mysql、 nacos Nacos 依赖 Java 环境来运行。我们通过下载编译后压缩包方式安装。 重点踩坑…...

ARM/Linux嵌入式面经(四):浙江大华

大华一面 嵌入式 主要是问的项目相关 标准的十五分钟 电话面 这个面试官主要问项目,我同门面的全问八股,可能面试官不一样吧 文章目录 UART串口通信的波特率,常用波特率有哪些串口通信校验方式是什么,有什么区别方便简单的奇偶校验偶校验(even parity)累加和校验CRC循环冗…...

ubuntu 18.04安装教程(详细有效)

文章目录 一、下载ubuntu 18.04镜像二、安装ubuntu1. 点击下载好的Vmware Workstation&#xff0c;点击新建虚拟机&#xff0c;选择 “自定义(高级)”&#xff0c;之后下一步。2. 默认配置&#xff0c;不需要更改&#xff0c;点击下一步。3. 选择 “安装程序光盘映像文件(iso)(…...

第二十一天-NumPy

目录 什么是NumPy NumPy使用 1.数组的创建 2.类型转换 3.赠删改查 4.数组运算 5.矩阵运算 什么是NumPy 1.NumPy操作的是多维数组&#xff0c;什么是纬度&#xff1f; NumPy使用 1. 安装 pip install numpy import numpy as np 2.官网&#xff1a; 中文官网&#xff1a…...

Vue:自动按需导入element-plus图标

自动导入使用 unplugin-icons 和 unplugin-auto-import 从 iconify 中自动导入任何图标集。 完整vite.config.js参考模板 https://download.csdn.net/download/ruancexiaoming/88928539 动态导入图标参考 https://blog.csdn.net/ruancexiaoming/article/details/136568219 导入…...

魔法之线:探索string类的神秘世界

&#x1f389;个人名片&#xff1a; &#x1f43c;作者简介&#xff1a;一名乐于分享在学习道路上收获的大二在校生 &#x1f648;个人主页&#x1f389;&#xff1a;GOTXX &#x1f43c;个人WeChat&#xff1a;ILXOXVJE &#x1f43c;本文由GOTXX原创&#xff0c;首发CSDN&…...

使用gnvm下载nodejs和npm

目录 前言 一、下载gnvm 二、利用gnvm下载nodejs 三、下载对应版本的npm 四、gnvm常用的命令 总结 前言 由于之前下载的版本过低&#xff0c;需要升级版本。但在使用gnvm升级node版本时遇到了一系列的问题&#xff0c;索性就把nodejs全部删除&#xff0c;重新用gnvm在下…...

C语言——简易版扫雷

目录 前言 ​编辑 游戏规则 游戏结构的分析 游戏的设计 使用多文件的好处有以下几点&#xff1a; 游戏代码实现 框架&#xff08;test.c&#xff09; game函数&#xff08;test.c&#xff09; InitBoard初始化&#xff08;game.c&#xff09; Print打印棋盘&#xff08;g…...

L3自动驾驶的“双保险”:冗余EPS关键技术解析

摘要: 本文主要介绍冗余EPS的发展路径和关键技术。 引言 在乘用车领域,电动助力转向系统(Electric Power Steering,EPS)相比传统的液压助力转向系统(Hydraulic Power Steering,HPS)具有结构简单、响应迅速、能耗低等优点,因此应用很广。随着智能驾驶的发展,作为底层…...

java.net.UnknownHostException

目录 报错信息 报错分析 UnknownHostException 分析 尝试解决 域名 报错可能 网络请求&#xff1a; 数据库连接&#xff1a; Socket通信&#xff1a; 总结&#xff1a; 报错信息 java.net.UnknownHostException Caused by: java.net.UnknownHostException:at java.…...

比派电器T6白色系高速吹风机,高品质保证下,追求极致性价比

广东比派电器科技有限公司于2020年成立于东莞市松山湖高新技术企业园区融易大厦&#xff0c;公司聚焦于小家电的研发&#xff0c;生产&#xff0c;销售。专注在小家电的PCBA研发&#xff0c;产品设计&#xff0c;成品生产。提供小家电产品一站式解决方案&#xff0c;致力于成为…...

每天学习一个Linux命令之ss

每天学习一个Linux命令之ss 在Linux中&#xff0c;网络管理是非常重要的一项工作。ss&#xff08;Socket Statistics&#xff09;是一个强大的命令行工具&#xff0c;用于获取各种网络套接字统计信息。它可以帮助我们查看网络连接、监听套接字、路由表、组播成员等信息。本文将…...

Qt的信号槽机制

1. 什么是元对象编译器和元对象系统&#xff1f; 在开始讲信号槽之前&#xff0c;我们先了解下Qt的框架的核心组成部分&#xff0c;Qt的元对象编译器&#xff08;MOC&#xff09;和元对象系统是Qt框架的核心组成部分&#xff0c;它们使得Qt拥有了信号与槽机制、反射&#xff08…...

跨域问题总结

文章目录 概要web应用整体请求流程技术名词解释跨域问题产生的原理解决方案前端代码角度前端服务器角度后端代码角度后端服务器角度 小结 概要 在不成熟的前后端开发过程中&#xff0c;经常遇到跨域问题&#xff1b; 在前后端分离的模式下的开发过程中&#xff0c;经常遇到跨域…...

K8s-MySQL主从集群

K8s-MySQL主从集群 引言 该案例代码均可从https://github.com/WeiXiao-Hyy/k8s_example 获取&#xff0c;欢迎Star&#xff01; 需求 一个“主从复制”的MySQL集群有一个主节点Master有多个从节点Slave从节点需要能水平扩展所以写操作只能在主节点上执行读操作可以在所有节点…...

seo js转码工具

js转码工具作用 用于把js加密 如果不想让别人看到自己的js 代码就可以使用这个方法 js工具网址 https://tool.chinaz.com/js.aspx 效果...

【SQL】601. 体育馆的人流量(with as 临时表;id减去row_number()思路)

前述 知识点学习&#xff1a; with as 和临时表的使用12、关于临时表和with as子查询部分 题目描述 leetcode题目&#xff1a;601. 体育馆的人流量 思路 关键&#xff1a;如何确定id是连续的三行或更多行记录 方法一&#xff1a; 多次连表&#xff0c;筛选查询方法二&…...

3步解锁设计协作新范式:设计师与开发者的Sketch规范神器

3步解锁设计协作新范式&#xff1a;设计师与开发者的Sketch规范神器 【免费下载链接】sketch-measure Make it a fun to create spec for developers and teammates 项目地址: https://gitcode.com/gh_mirrors/sk/sketch-measure 在设计交付的过程中&#xff0c;你是否曾…...

Java面试题知识图谱构建:利用PyTorch 2.8图神经网络(GNN)技术

Java面试题知识图谱构建&#xff1a;利用PyTorch 2.8图神经网络&#xff08;GNN&#xff09;技术 1. 引言&#xff1a;Java面试题的痛点与解决方案 对于准备Java面试的开发者来说&#xff0c;最大的挑战不是找不到学习资料&#xff0c;而是面对海量分散的知识点无从下手。JVM…...

拓朋A50Ex自组网防爆对讲机,守护矿山救援队安全通讯

在深邃复杂的矿山巷道&#xff0c;安全与沟通是每位救援队员与作业人员最为关心的两大要素。在这样一片黑暗而充满挑战的天地里&#xff0c;拓朋A50Ex自组网防爆对讲机以其出色的性能&#xff0c;悄然成为了矿山救援队的隐形守护者。 无惧复杂环境&#xff0c;沟通无阻 矿山内部…...

终极指南:Vue-Multiselect 源码架构深度剖析与优秀组件设计模式解析

终极指南&#xff1a;Vue-Multiselect 源码架构深度剖析与优秀组件设计模式解析 【免费下载链接】vue-multiselect Universal select/multiselect/tagging component for Vue.js 项目地址: https://gitcode.com/gh_mirrors/vu/vue-multiselect Vue-Multiselect 是一个功…...

Perseus开源补丁:3步轻松解锁《碧蓝航线》全皮肤完整指南

Perseus开源补丁&#xff1a;3步轻松解锁《碧蓝航线》全皮肤完整指南 【免费下载链接】Perseus Azur Lane scripts patcher. 项目地址: https://gitcode.com/gh_mirrors/pers/Perseus 还在为《碧蓝航线》中那些精美的皮肤无法解锁而烦恼吗&#xff1f;Perseus开源补丁为…...

10.Agent 进阶实践:基于 Planner-Executor-Responder 的多步决策系统实现

目 录 从单步执行到多步决策与状态流转最小循环Agent代码实现工具选择planner执行工具executor执行输出responder 从单步执行到多步决策与状态流转 最近不知道大家有没有关注一些招聘平台的招聘信息&#xff0c;其实看这些平台我相信最多的关键词就Cot、ReAct等&#xff0c;今…...

高阶 HDI 同行参考:40 层>5 阶 HDI 技术难点

【实战复盘】19 天拿下 40 层&#xff1e;5 阶板的工艺 项目管理方案 标签&#xff1a;高阶HDI、激光钻孔、电镀均匀性、多次压合最近刚完成一款40层且大于5阶的高阶HDI项目。坦白说&#xff0c;这板子难度不小&#xff1a;多次压合对位、激光钻孔一致性、电镀填孔均匀性&…...

构建企业级统一认证中心:Spring Boot OAuth2 Server 的架构实践与深度解析

构建企业级统一认证中心&#xff1a;Spring Boot OAuth2 Server 的架构实践与深度解析 【免费下载链接】oauth2-server spring boot (springboot 3) oauth2 server sso 单点登录 认证中心 JWT,独立部署,用户管理 客户端管理 项目地址: https://gitcode.com/gh_mirrors/oau/oa…...

自动化内容审核:OpenClaw+Qwen3-4B-Thinking搭建个人防火墙

自动化内容审核&#xff1a;OpenClawQwen3-4B-Thinking搭建个人防火墙 1. 为什么需要个人内容防火墙 作为一个长期活跃在社交媒体平台的内容创作者&#xff0c;我最近遇到了一个棘手的问题。某天深夜发布的一条科普视频&#xff0c;因为背景音乐中出现了某段敏感旋律&#xf…...

解决学术文献格式兼容难题:本地CAJ转PDF工具提升研究效率

解决学术文献格式兼容难题&#xff1a;本地CAJ转PDF工具提升研究效率 【免费下载链接】caj2pdf Convert CAJ (China Academic Journals) files to PDF. 转换中国知网 CAJ 格式文献为 PDF。佛系转换&#xff0c;成功与否&#xff0c;皆是玄学。 项目地址: https://gitcode.com…...