微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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';//会改变值,不会报错

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐