ECMAScript
ECMAScript(简称“ES”)是根据:ECMA-262 标准实现的通用脚本语言
ECMA-262 标准主要规定了这门语言的语法、类型、语句、关键字、保留字、操作符、对象等几个部分.
ECMA
ESMA (European Computer Manufacturers Association) 是一个组织
中文名称为:欧洲计算机制造商协会
,这个组织的目标是评估、开发和认可电信和计算机标准.
ECMA-262
Ecma 国际制定了许多标准,而 ECMA-262 只是其中的一个
ECMA-262 定义了 JavaScript 的语法、语义、基本对象和操作,以及与浏览器环境和其他宿主环境的交互等方面的规则。
TC39(Technical Committee 39) 是推进 ECMAScript 发展的委员会,其会员都是公司 其中主要是浏览器厂商,有苹果、谷歌、微软、因特尔等)
ES6
是ECMA-262,在2015年发布的新版本,ES此后每年进行更新~
ES6 的版本变动内容最多,具有里程碑意义 ,引入了许多新的语法特性、功能和改进,使得 JavaScript 编码更加现代化、清晰和高效。
ES6的兼容性:
我们都知道,JavaScript在不同的浏览器中具有不同的兼容性,因为ES每年都会更新,
所以,一些较旧的浏览器可能不完全支持所有的 ES6 特性,可以通过官网进行查询兼容环境配置:ES6兼容性
- 现在大部分的浏览器都兼容ES6,也可以修改上述,URL来查询不同版本的ES环境兼容
let 关键字
let
是 ES6 引入的一个关键字,用于声明变量
相比于使用 var
声明变量,let
具有更好的作用域控制和块级作用域特性。
- 全局对象属性
使用
var
声明的变 量会成为全局对象的属性,也是根据环境而言的
而使用let
声明的变量不会。这意味着使用let
声明的变量不会污染全局命名空间 - { 块级作用域 }
let
声明的变量具有块级作用域,意味着变量的作用域限制在声明它的代码块内 - 不存在变量提升
let
声明的变量不会发生变量提升,变量只有在声明之后才能被访问和使用,变量提升可以看一这篇文章