1 模板字符串能写的和不能写的:
(1). 可以写一切有返回值的js表达式:
变量,运算,三目,函数调用,创建对象,调用方法,访问数组元素
(2). 不能写程序结构:
if else if else
for(){} while(){} do{}while()
2 let
①禁止声明提前
②让程序块也能成为作用域,阻止程序块内的变量,影响外部
③即使全局生命的let变量,无法在window中找到,但是可以使用
④同一作用域内不允许重复声明两个同名的let变量
let的原理:
(1). let其实在低层自动被翻译为匿名函数自调!
(2). let的变量,还被悄悄改了名字,比如let t=xxx => var _t=xxx
3 箭头函数
箭头函数可以使函数内的this与函数外的this相同
(1). 去掉function,在()和{}之间加=>
如果没有形参变量,则()不能去掉!
(2). 如果形参列表只有一个形参变量,则可以省略()
(3). 如果函数体只有一句话,可省略{}
如果函数体仅有的一句话,还带有return,则必须省略return