记录一下阮老师提及的立即执行函数模拟let(以前根本没想到可以这样做啊!)
// IIFE 写法 (function () { var tmp = ...; ... }()); // 块级作用域写法 { let tmp = ...; ... }
该方法利用使用var创建的变量会存放在函数作用域中的特点,使用一个匿名立即执行函数来包裹其中的变量,让其不对外部函数块中的变量造成影响,也可以存储使用var进行循环的for循环的i值,让其不出现调用时总是使用循环结束后的i值,而是每次循环时的i值。
记录一下阮老师提及的立即执行函数模拟let(以前根本没想到可以这样做啊!)
// IIFE 写法 (function () { var tmp = ...; ... }()); // 块级作用域写法 { let tmp = ...; ... }
该方法利用使用var创建的变量会存放在函数作用域中的特点,使用一个匿名立即执行函数来包裹其中的变量,让其不对外部函数块中的变量造成影响,也可以存储使用var进行循环的for循环的i值,让其不出现调用时总是使用循环结束后的i值,而是每次循环时的i值。