码迷,mamicode.com
首页 > 其他好文 > 详细

执行上下文(笔记)

时间:2017-11-19 14:52:04      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:nbsp   函数   变量   激活   作用域链   过程   eval   声明   bsp   

可执行代码类型

  1. 全局代码
  2. 函数代码
  3. eval代码

执行上下文类型

全局上下文

函数上下文

eval上下文

 

 

 

执行上下文组成

作用域链

this

变量对象

 

技术分享图片 

 技术分享图片

进出栈顺序

window 进栈

foo进栈

inner进栈

inner出栈

foo出栈

eval进栈

eval出栈

window出栈(只有当页面关闭时window才出栈)

 

 

变量对象的用途

用来存储 变量、声明式函数、函数形参

 

技术分享图片

a   v 和function test()被存储

变量式声明的函数不被存储   var a=function(){}

 

 不同上下文的变量对象

全局队象   激活对象      calling context.vo

技术分享图片

技术分享图片

技术分享图片

技术分享图片

变量实例化

技术分享图片

函数的调用实在函数的实例化之后

技术分享图片

 

 技术分享图片

优先级        声明式函数>>形参>>变量 

 实例化的过程先于赋值

 

 

技术分享图片

技术分享图片

 

技术分享图片

 

DEMO:

 技术分享图片

 

 this

 技术分享图片

谁调用 this指向谁

 

 

 技术分享图片

 

执行上下文(笔记)

标签:nbsp   函数   变量   激活   作用域链   过程   eval   声明   bsp   

原文地址:http://www.cnblogs.com/chengzp/p/context.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!