ES(ECMAScript )是一个国际通过的标准化脚本语言。
JS(JavaScript)由ECMAScript和DOM、BOM三者组成。
ECMAScript是JavaScript的语言规范,JavaScript是ECMAScript的实现和扩展。
作用域:
ES5 中作用域有:全局作用域、函数作用域。没有块作用域的概念。
ES6 中新增了块级作用域。
块作用域由 { } 包裹,if语句和 for语句里面的{ }也属于块作用域。
var、let、const 使用区别
- var定义的变量,没有块的概念,可以跨块访问, 不能跨函数访问。
- let定义的变量,只能在块作用域里访问,不能跨块访问,也不能跨函数访问。
- const用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,而且不能修改。
const定义的对象属性是否可以改变
const定义的对象属性是可改变的,因为对象是引用类型,对象其属性值改变了也是属性的指针指向改变,而非const定义的对象指针指向改变,所以定义的对象属性是可改变的。