摘要:
在JS代码执行之前会首先创建一个全局作用域,里面有所有的定义的变量。 在函数定义的时候也会创建一个函数的作用域,作用域中包含了该函数中所定义的变量。 具体还没有理解很清楚,感觉作用域和执行上下文很像。 就是当在函数执行的代码中使用到某个变量的时候,它首先会在自己的作用域中找该变量,如果找不到就去上一 阅读全文
摘要:
在执行JS代码时候,可以看成是在执行一个全局函数的代码,在这个全局函数的代码体中又有可能执行了很多个局部函数。 JS中在执行函数的时候会为函数创建一个执行的上下文用来保存在函数中创建的变量等数据,当函数执行完之后会销毁创建的该执行上下文。 这个执行上下文,不是一个对象,因为它只是在栈中开辟了一块内存 阅读全文
摘要:
JS代码在执行的时候会先找出执行代码中定义的变量和函数,对其进行声明。 例1:console.log(a); var a = 4; 此时输出undefined。a变量在执行console.log(a);这条语句之前就已经被定义了只是没有赋值。实际的执行顺序是:var a ; console.log( 阅读全文