let const

变量作用域

  • let 和 var 都是用来声明变量 但是let 有变量作用域的问题
    在一个代买块- {} 中声明的let在外部无法访问
  • 不存在变量名提升
  • 在块级作用域使用let或者const 声明变量之前是不可以给变量赋值的,如果赋值就会报错。俗称暂时性死区
  • 如下隐藏性死区
  • const 定义的变量如果是基本数据类型就无法修改,如果是引用数据类型,因为引用数据类型只是保存了指针,所有只要指针不发生改变,指针指的数据可以随意的改变
//在y还没有声明之前就让y赋值给X会报错
function bar(x = y, y = 2) {
  return [x, y];
}
bar(); // 报错
  • 不能在同以作用域重复声明变量

在for循环中使用var声明变量在循环结束后该变量不会消失会成为全局变量

变量声明 的六种方法
es5 var function es6 let const impirt class

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容