let和var这两个关键字都是用于声明变量的,不同之处在于,let声明的变量只在let所在的代码块里有效,也就是在块级作用域内有效,而var声明的变量在块级作用域外依然有效。
通过下面这段代码我们就可以看出,let和var的区别:
{ var a = 1; let b = 2; } console.log(a); // 1 console.log(b); // ReferenceError: b is not defined
我们用let来定义变量时具有一些与var不同的特性,参见《let关键字有哪些特性?》,这个知识点要牢记。
如果你不知道let关键字的这些特性,那么你写代码的时候容易出现一些问题。
ES6的知识点其实并不多,建议前端开发工程师把ES6好好学一下。
关于ES6的书,我觉得阮一峰写的那本《ES6标准入门》写得蛮好的。