es6学习总结

以下是我es6学习的一部分总结:

let const 和 var之间的区别以及应用场景:

let是ES6新出的命令,用于声明变量,会形成块级作用域,用其声明的变量,只在let命令所在的代码块内有效,并不再受外部的影响;

let不存在变量提升,即变量在声明之前不能使用,这样的设计是为了让大家养成良好的编程习惯,变量一定要在声明之后使用;

let会造成暂时性死区,即一进入到let声明的块级作用域,使用let声明的变量就会认为已经存在,但是由于变量不可提升,只有等到声明变量的那一行代码出现,才可以获取和使用该变量,在声明之前获取使用该变量就会报错

let在相同作用域内,不允许重复声明同一个变量;

const声明一个只读的常量,即用const声明的常量不得改变值,一旦声明变量,就必须立即初始化,不得留到以后赋值

const对于基本数据类型的常量声明,值是不可改变的,但是对于引用数据类型的常量,例如obj 更改某个属性的值,是可以更改的;

如果真的想将obj冻结(属性值也不可改变),可以应使用Object.freeze方法,如果属性值也是一个引用类型数据的话,可以使用递归的方式 ,深层次遍历调用该方法,将obj完全冻结。

ES6 的块级作用域必须有大括号,如果没有大括号,JavaScript 引擎就认为不存在块级作用域。块级作用域的存在可以用来解决 内层变量覆盖外层变量、或者循环计数时的变量泄露为全局变量等问题;

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • ES6语法规范学习 let、const、var 三者比较 不存在变量提升let、const 声明变量之前无法使用v...
    叮叮当小铃铛阅读 234评论 0 0
  • 一、let、const 的用途和 var 相似,都是用来声明变量,但各自特性并不相同。 let 的特性: 1. 只...
    momeakl阅读 243评论 0 0
  • ES6 的新特性 1:变量声明 let 和 const 在 ES5 之前 以下两种 函数方式 声明 test 方式...
    泰然自若_750f阅读 154评论 0 1
  • 1 let和const使用 let用于变量的声明,可重复赋值;const用于常量的声明,只允许在声明时赋值 2 l...
    澳毅奥阅读 347评论 0 0
  • 原文:http://jsrun.pro/tutorial/FZKKp Node 是 JavaScript 的服务器...
    空乱木阅读 250评论 0 0

友情链接更多精彩内容