ES6中let 和 const 的新特性


Posted in Javascript onSeptember 03, 2018

在javascript中,我们都知道使用var来声明变量。javascript是函数级作用域,函数内可以访问函数外的变量,函数外不能访问函数内的变量。本文给大家介绍ES6中let 和 const 的特性,具体内容如下所示:

let的特性:

1.不存在变量提升现象:即声明前使用,报ReferenceError。适用于for循环计数器。
2.暂时性死区:即在块级作用域内使用let声明变量,该变量只能在该作用域内使用。
3.不允许重复声明:let声明过的变量不能再次声明,否则报错。

const的特性:

1.不存在变量提升现象。
2.暂时性死区。
3.不可重复声明。
4.声明的是只读常量,声明时必须初始化。
5.本质保存的是内存地址,简单类型数据的值就保存在这个地址中,复合类型数据在这个地址中保存的是一个指针,这个指针指向的对象可以改变,单指针不可改变。

cost foo = {}; 
 // 可以改变foo的属性
 foo.prop = 123;
 foo.prop //123 
 // 不可以使foo指向别的对象
 foo = {}; //TypeError: "foo" is read-only

冻结对象:

// 彻底冻结
var constantize = (obj) => {

  Object.freeze(obj); 

  Object.keys(obj).forEach( (key, i) => {

    if( typeof obj[key] === 'object' ){

     constantize( obj[key] );

    } 
  }); 
}

总结

以上所述是小编给大家介绍的ES6中let 和 const 的特性 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript SocialHistory 检查访问者是否访问过某站点
Aug 02 Javascript
window.location.href = window.location.href 跳转无反应 a超链接onclick事件写法
Aug 21 Javascript
Ajax提交与传统表单提交的区别说明
Feb 07 Javascript
jQuery实现下拉框左右选择的简单实例
Feb 22 Javascript
javascript与有限状态机详解
May 08 Javascript
JavaScript实现页面跳转的几种常用方式
Nov 28 Javascript
微信小程序 textarea 组件详解及简单实例
Jan 10 Javascript
使用ionic在首页新闻中应用到的跑马灯效果的实现方法
Feb 13 Javascript
vue.js开发环境安装教程
Mar 17 Javascript
bootstrap-table组合表头的实现方法
Sep 07 Javascript
支付宝小程序自定义弹窗dialog插件的实现代码
Nov 30 Javascript
教你30秒发布一个TypeScript包到NPM的方法步骤
Jul 22 Javascript
Angular项目如何升级至Angular6步骤全纪录
Sep 03 #Javascript
vue 中滚动条始终定位在底部的方法
Sep 03 #Javascript
前后端如何实现登录token拦截校验详解
Sep 03 #Javascript
vue移动端监听滚动条高度的实现方法
Sep 03 #Javascript
vue 纯js监听滚动条到底部的实例讲解
Sep 03 #Javascript
解决vue.js this.$router.push无效的问题
Sep 03 #Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
Sep 03 #Javascript
You might like
PHP实现的简单缓存类
2015/07/29 PHP
PHP中Session和Cookie是如何操作的
2015/10/10 PHP
php限制文件下载速度的代码
2015/10/20 PHP
分享50个提高PHP执行效率的技巧
2015/12/26 PHP
深入浅析用PHP实现MVC
2016/03/02 PHP
PHP 的比较运算与逻辑运算详解
2016/05/12 PHP
JavaScript Perfection kill 测试及答案
2010/03/23 Javascript
jQuery创建自己的插件(自定义插件)的方法
2010/06/10 Javascript
jQuery示例收集
2010/11/05 Javascript
js 替换功能函数,用正则表达式解决,js的全部替换
2010/12/08 Javascript
Knockoutjs的环境搭建教程
2012/11/26 Javascript
jquery表单验证框架提供的身份证验证方法(示例代码)
2013/12/27 Javascript
什么是MEAN?JavaScript编程中的MEAN是什么意思?
2014/12/18 Javascript
Javascript实现单例模式
2016/01/24 Javascript
深入浅析JavaScript函数前面的加号和叹号
2016/07/09 Javascript
three.js绘制地球、飞机与轨迹的效果示例
2017/02/28 Javascript
jquery实现静态搜索功能(可输入搜索文字)
2017/03/28 jQuery
基于VUE.JS的移动端框架Mint UI的使用
2017/10/11 Javascript
Vue的事件响应式进度条组件实例详解
2018/02/04 Javascript
微信开发之微信jssdk录音功能开发示例
2018/10/22 Javascript
Vue.js实现大转盘抽奖总结及实现思路
2019/10/09 Javascript
在vue中通过render函数给子组件设置ref操作
2020/11/17 Vue.js
Python守护进程和脚本单例运行详解
2017/01/06 Python
详解python调度框架APScheduler使用
2017/03/28 Python
Python 调用Java实例详解
2017/06/02 Python
python 列表转为字典的两个小方法(小结)
2019/06/28 Python
PyQt5基本控件使用详解:单选按钮、复选框、下拉框
2019/08/05 Python
python 经典数字滤波实例
2019/12/16 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
2020/09/23 Python
html5摇一摇代码优化包括DeviceMotionEvent等等
2014/09/01 HTML / CSS
共筑中国梦演讲稿
2014/04/23 职场文书
初一学生评语大全
2014/04/24 职场文书
领导班子四风对照检查材料
2014/09/23 职场文书
公安局班子个人对照检查材料思想汇报
2014/10/09 职场文书
股权转让协议范本
2014/12/07 职场文书
2014年仓库管理工作总结
2014/12/17 职场文书