es6笔记一

letes6

  • 用于声明变量,相似于var,可是所声明的变量只在let命令所在的代码块内有效。
  • 不存在变量提高,变量必定要在声明后才能使用命令。
  • 暂时性死区,若是区块中存在let和const命令,这个区块对这些命令声明的变量,造成了封闭做用域
  • 不能在相同的做用域内,重复声明同一个变量

块级做用域函数

  • 外层做用域没法读取内层做用域的变量
  • 内层做用域能够定义外层做用域的同名变量
  • es5规定函数只能在顶层做用域和函数做用域之中声明,不能在块级做用域中声明
  • es6明确容许在块级做用域中声明函数
  • 函数声明语句的行为相似于let,在块级做用域以外不可引用

const命令es5

  • const声明一个只读变量,常量的值不能改变
  • 一旦声明,必须初始化,不然会报错
  • const和let命令相同,只在声明所在的块级做用域内有效
  • 不存在变量提高,也存在暂时性死区,只能在声明以后使用
  • 不能重复声明

顶层对象的属性spa

  • es5顶层对象的属性与全局变量是等价的
  • var、function命令声明的全局变量,依旧是顶层对象的属性
  • let、const、class命令声明的全局变量不属于顶层对象的属性

顶层对象对象

相关文章
相关标签/搜索