javascript笔记:深入分析javascript里对象的创建(下)---从对(2)
为什么这样,我这里还真说不清了,我在firebug里面在函数add处定义好断点,大家看如下结果:
这就是函数add的作用域链,也就是这个函数可以访问到的对象集合了。
这里只定义了一个函数了,函数只有在运行时候才看到它的本质了。看下面代码:
<script type="text/javascript">
function add(a,b)
{
var sum = a+b;
return sum;
}
add(1,2);
</script>
复制代码
当函数被执行的时候,执行函数会创建一个称为“运行期上下文(execution context)”的内部对象。这就是我在中篇里讲到的执行环境了,不过他是在函数执行时候创建的内部对象了,而绝非是函数一个固有的属性,只有函数执行时候才会被创建了,一个运行期上下文定义了一个函数执行时的环境。函数每次执行时候对应的运行环境是独一无二的,所以多次调用同一个函数时候会导致创建多个运行期上下文,当函数执行完毕,执行器上下文就被销毁了。
我对运行期上下文的理解就是函数内部一个匿名的函数,这么理解的原因是因为创建执行器上下文时候也会创建属于他的作用域链了,因为我认为在javascript里面只有函数才有作用域链这个属性了,不过这个特别作用域链有特殊作用:这个作用域链是用来解析标示符的。
我的对象的创建的内容讲完了,由对象的创建我引出了作用域和执行环境的概念了,也是对象的创建中的特例函数对象的创建我引入了作用域和执行环境的本质到底是什么,对象的创建的内容就此结束了,下一篇博文我将通过作用域链和执行环境来说说如何写出高效的javascript程序了。
好久没写博客了,有朋友说我坚持不去了,当然不是了,最近事情真多,关键断网了20多天了,昨天才好了。我要做技术专家,我想任何技能的提升一定要和大家切磋,所以这个我会坚持下去了,但是真的没时间我也没法子了哈。
喜欢做软件,就应该当做爱好,不管什么坚持不坚持,你真喜欢它不用想坚持也能坚持了。
摘自 夏天的森林
相关新闻>>
- Javascript 兼容 IE6、IE7、FF 的“加入收藏”“设为首页”
- 好好学一遍JavaScript 笔记(一)——基础中的基础
- 好好学一遍JavaScript 笔记(二)——encode、数组、对象创建
- 好好学一遍JavaScript 笔记(三)——StringBuffer、prototype
- 好好学一遍javaScript 笔记(四)——Attribute、HTML元素、文档碎
- 好好学一遍JavaScript 笔记(五)——正则表达式基础
- 好好学一遍JavaScript 笔记(六)——正则表达式基础二
- 好好学一遍JavaScript 笔记(七)——RegExp对象与常用正则
- 好好学一遍JavaScript 笔记(八)——冒泡型事件、捕获型事件
- JavaScript详解
- 发表评论
-
- 最新评论 更多>>