精通Javascript 之 上下文对象
来源:互联网 发布:网络创业理论与实践 编辑:程序博客网 时间:2024/04/28 19:21
理解上下文对象是理解JS面向对象的基础。上下文对象是通过this变量体现的,这个变量永远指向当前代码所处的对象中,全局变量其实是window对象的属性。看一个上下文对象操作的简单的例子:
//********************************************************* //在上下文对象内使用函数并将其上下文对象切换为另一个变量 //********************************************************* var obj = { yes: function(){ this.val = true; }, no: function(){ this.val = false; } }; // 这个时候obj对象中没有val这个变量 alert( obj.val == null ); // 执行yes函数之后,val变量和obj对象联系起来 obj.yes(); alert( obj.val == true ); // 我们把window.no指向obj.no并执行 window.no = obj.no; window.no(); // obj.val的值并没有变,而且window里有了val变量且值为false // 因为window.no在执行的时候上下文是window alert( obj.val == true ); alert(window.val == false);但是我们在把obj.no的上下文对象切换为window时,代码变得不好理解了。JS提供了call和apply两个方法,可以用于实现这一功能。我们把上边的代码里的window.no = obj.no; window.no(); 替换成 obj.no.call(window);或者obj.no.apply(window);会得到同样的结果
- 精通Javascript 之 上下文对象
- javascript--上下文对象
- JavaScript上下文执行对象
- javaScript 上下文this 对象
- 书:"Pro JavaScript Techniques 精通JavaScript"之对象公共方法
- 书:"Pro JavaScript Techniques 精通JavaScript"之对象私有方法
- 面向对象的 Javascript 上下文
- JavaScript 上下文对象 (this)
- 【看了一篇解释javascript中的上下文对象的,比较深刻】深入理解Javascript之执行上下文(Execution Context)
- 精通Javascript之引用
- 精通Javascript 之 继承
- JavaScript 深入之执行上下文
- JavaScript知识点之执行上下文
- JavaScript 执行上下文和变量对象
- JavaScript 面向对象之二 —— 函数上下文(this的指向)
- JavaScript 面向对象之二 —— 函数上下文(call() 和 apply())
- JavaScript Cookie精通之路
- JavaScript Cookie精通之路
- Android单元测试之Testing和Instrumentation
- QT核心编程之调试技术 (7)
- vs2008 sp1补丁安装到最后一点点的时候,就无法安装下去了 解决方法
- 性能测试知多少之并发用户
- NSArray,NSSet,NSDictionary总结
- 精通Javascript 之 上下文对象
- In ,Exists,Some,Any
- win7(64位)PL/SQL报错:无法解析指定的连接标识符和Powerbuilder报错:无法解析指定的连接标识符
- vim
- Javascript拓展String方法
- 入静和入世
- 目的檔格式 (ELF)
- python 统计字符串中数字,大小写,特殊字符
- 注册一个gmail等于注册了无数个邮箱