ES6的定义和let、const变量声明

ES6  ECMAScript6.0是JavaScript的下一个版本标准,2015年06月发版

ES6主要是为了解决ES5的先天不足,比如说JavaScript里没有类的概念,但目前浏览器的JavaScript是ES5版本,大多数高版本的浏览器也支持ES6,不过只实现了ES6的部分功能

 let和const声明

一.let和var 的区别

1.var声明变量的生命周期不受代码块影响(function除外),而let声明变量的生命周期受代码块影响;

注意:1.代码块指{}之间的内容,{a:1}(对象)不属于生命周期大括号;

   2.函数function声明的变量,生命周期和var相同

   3.函数function,var都是ES3(旧时代)留下的东西,行为一样

2.var,function存在变量提升,let不存在变量提升

注意:变量提升的意思是指在变量声明之前就可以访问该变量不报错

3.var可以重复声明同一个变量,let在同一个代码块中不可以重复声明同一个变量

4.var声明全局变量(不是声明在函数里的)会变成window对象的属性;let声明的全局变量不会成为window对象的属性

  注意:BOM (Borwer Object Model)浏览器环境,window对象是顶级变量

二.const constant 声明常量

常量:常量是只能被复制一次的变量

常量的声明和初始化必须写在一句语句里

例子:

const a = 10;

1.const的其他特点和let相同

1.生命周期受代码块影响

2.没有变量提升

3.在同一个代码块里不能重复声明同一个变量

4.在全局声明的变量不会成为window对象的属性

2.const和let区别

let声明的变量可以重复赋值,const声明的变量只能赋值一次

例子:

const perosn = {color:'red'};
person = {color:'blue'};//会报错
person.color = 'blue';//会改变值,不会报错

 

posted @ 2021-09-09 21:22  YEZI32  阅读(159)  评论(0)    收藏  举报