es6学习笔记 1、var和let区别 var是全局变量可以重复声明,有变量提升默认值为undefined; 不存在暂时性死区; let是块级变量 不可以重复声明,没有变量提升,存在暂时行死区,区块对变量形成封闭作用域,声明之前使用变量会报错。 2、分析代码执行结果 报错,a在let之前存在,let不能变量提升,会造成暂时性死区。 3、补全代码 4、将下面字符串改用模板字符串实现 5、两个程序输出结果是 key值发生改变 6、下列程序执行f()函数运行结果是? 内部变量tmp覆盖外部tmp,tmp变量提升到上去,输出值为undefined; 7、对比一下两道程序输出的值相同么?