let和const命令

let和const命令

let 命令:

  1. 所声明的变量只在let命令所在的代码块内有效。
  2. for循环的计数器就很适合使用let命令。
  3. 不存在变量提升
  4. 暂时性死区:只要块级作用域内存在let命令,它所声明的变量就“绑定“在这个区域,不在受外部的影响。
  5. 在相同作用域中不允许重复声明

块级作用域

  1. let实际上为javascript新增了块级作用域
  2. ES6允许块级作用域的任意嵌套。
  3. ES5规定,函数只能在顶层作用域和函数作用域中声明,不能再块级作用域中声明。
  4. ES6引入了块级作用域,明确允许在块级作用域之中声明函数。在块级作用域中,函数声明语句的行为类似于let,在块级作用域之外不可引用。

do表达式

  1. 在块级作用域之前加上do,使它变为do表达式,然后就会返回内部最后执行的表达式的值。

const命令

  1. 声明一个只读常量,一旦声明,常量的值就不能改变。
  2. 实际上const保证的并不是变量的值不得改动,而是变量指向的那个内存地址不得改动。
  3. 对于简单类型的数据,值就保存在变量指向的那个内存地址。
  4. 而对于复合类型的数据,变量指向的内存地址,保存的只是一个指针,const保证这个指针固定,而它指向的数据结构是不能控制的。

ES6声明变量的六种方法

ES5:var 和 function
ES6:let, const, import, class

顶层对象的属性

  1. 顶层对象,在浏览器环境指的是window对象,在node指的是global对象。ES5之中,顶层对象的属性与全局变量是等价的。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • let 命令 块级作用域 const 命令 顶层对象的属性 global 对象 let 命令 基本用法 ES6 新...
    嘉奇呦_nice阅读 1,650评论 0 2
  • let 命令 块级作用域 const 命令 顶层对象的属性 global 对象 let 命令 基本用法 ES6 新...
    卞卞村长L阅读 629评论 0 0
  • let 和 const 命令 let 命令 块级作用域 const 命令 顶层对象的属性 gl...
    安小明阅读 999评论 0 0
  • 1.let命令 基本用法 ES6 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在le...
    angelwgh阅读 294评论 0 0
  • 最近每每翻看以前的读书日记就要默默的检讨自己一下。比如上一篇,作者明显是个少年犯吧,哈哈哈哈哈哈哈哈哈!当时写的时...
    柳涛虹阅读 188评论 0 1