闭包就是能够读取其他函数内部变量的函数. 在javascript中,只有函数内部的子函数可以读取局部变量,因此,我理解闭包就是定义在一个函数内部的函数. 例子: var f1 = function() { var n = 100; var f2 = function() { return n; } return f2(); } var s = f1(); console.error(n + 1); 由于n是定义在f1内部的局部变量,因此外部的n是未定义的,会出错 var f1 = functio…
关于 const let var 总结: 建议使用 let ,而不使用var,如果要声明常量,则用const. ES6(ES2015)出现之前,JavaScript中声明变量只有通过 var 关键字,函数声明通过 function 关键字, ES6之后,声明的方式有 var . let . const . function . class . const 用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,而且不能修改. let let是相对var…