下面是一个名为index.js的文件let a = 1;
let b = 2;如果我运行它,我知道a和foo在解析阶段被附加到全局作用域中但是现在我没有运行foo函数,foo的函数作用域是在解析的时候决定的吗?如果确定了,name和b放在哪里?
实际上,当我读到“你还不知道JS --作用域和闭包”时,我被这个问题给困住了。此时不会执行getStudent
被设计为可重用的JS模块的典型构造如下: ... declarations here...这允许对代码进行语法封装,以允许运行时解析器它还提供了作用域管理,因此在curlies中声明的var和函数在外部是不可见的。另一个典型的构造是通过赋值将属于内部作用域的对象或函数“导出”到外部作用域,如下所示: var data =