let和const

let

用来声明变量,但是所声明的变量只在let命令所在的代码块内有效

  {
    let a=12
    alert(a)//12
  }
  alert(a)//报错 找不到

let不像var那样会发生变量提升,所以一定要先声明后使用。

  console.log(foo); //undefined
  console.log(bar); //报错
  var foo = 2;
  let bar = 3;

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

   let a=12;
   let a=5;//报错
   console.log(a)


const

const同样可以创建块作用域变量,同样只在声明所在的块级作用域中有效。但其值是固定的,不可更改,只读。

    {
    const a=12;
      alert(a);//12
    }
    alert(a)//报错

一旦声明变量,就必须立即初始化,不能留到以后赋值。

  //只声明不赋值就会报错
  const foo; //报错

const和let一样没有变量提升,同样不能重复声明。

 

最新文章

  1. 一个App完成入门篇(一)-从Hello world开始
  2. FZU Problem 2082 过路费 树链剖分
  3. 给Azure 虚机的硬盘扩充容量[转]
  4. Set up gradle HiveMind
  5. MATLAB学习笔记(五)——MATLAB绘图
  6. Linux内核分析笔记 与Linux内核开发理论
  7. 如何设置fedora默认从命令行启动?
  8. 几种常用单片机I/O口线的驱动能力
  9. Perfmon 介绍
  10. css样式表及属性
  11. 2016——3——16 kmp 7题
  12. cocoapods安装和使用常见问题及解决方案
  13. AngularJS模块
  14. 限制ssh远程登陆
  15. Centos7 开放防火墙端口命令
  16. BZOJ_1098_[POI2007]办公楼biu_链表优化BFS
  17. Vcenter 账户密码过期设置修改
  18. 我设计的电脑usb红外遥控键盘原理图
  19. Linux内核分析第六周总结
  20. 超级牛皮的oracle的分析函数over(Partition by...) 及开窗函数

热门文章

  1. 设置root密码,su与sudo的区别
  2. 一个很好用的系统管理的命令lsof(转载)
  3. IIS 与 Apache共存
  4. js去掉双引号
  5. lua工具库penlight--02表和数组
  6. 编译hadoop,spark遇到的问题总结
  7. boa 服务的启动
  8. [i.MX6q]i.MX6q处理器,linux操作系统平台搭建 从SD卡启动系统
  9. 新手入门贴:史上最全Web端即时通讯技术原理详解
  10. Linux 串口编程