javascript语言精粹----------------------读书笔记之关于this的理解问题
来源:互联网 发布:网络电视怎么看中央8吗 编辑:程序博客网 时间:2024/05/16 05:30
第四章:
1 关于this的用法,书中写了四种调用模式:
a) 方法调用模式,在对象中定义了一个函数时,该函数称为方法,其this理解为该对象
var test = {
a:functio(){console.log(this);}
};
test.a();
this指向的就是test本身,这个很好理解。不好理解的来了
b)函数调用模式,在某个函数中调用了this,它又不是对象的属性时,this被设置为全局,即window。这样会带来一个问题,如果在某个对象方法中再希望执行一个函数,该函数中的this不会指向对象,却会指向window!好在有一个很简单的解决办法,如下:
test. a=function() {
var that = this;
var b = funciton(){
console.log(this);//window!
console.log(that);//test!
}
}
也就是说在调用函数之前,先给某个值赋予this。然后再函数中调用该值,可以取到对象的执行环境。
c)构造器调用模式。
在使用构造函数模式创建对象时,如果使用new方法,构造函数中的this会指向新创建出来的对象上,不推荐这种方法,所以此处不详说。
d)apply调用模式,apply是javascript中神奇的东西,光他就可以写一篇很长的博文,此处我引用别人写的一篇详细的说明:
http://blog.csdn.net/qianzai5765638/article/details/6952321
。
- javascript语言精粹----------------------读书笔记之关于this的理解问题
- 读书笔记之JavaScript语言精粹
- 《JavaScript语言精粹》读书笔记
- 《JavaScript语言精粹》读书笔记
- javascript语言精粹-------------------------读书笔记
- JavaScript语言精粹(读书笔记)
- javascript 语言精粹读书笔记
- 《JavaScript语言精粹》读书笔记
- JavaScript 语言精粹读书笔记(第二章)
- JavaScript 语言精粹读书笔记(第三章)
- JavaScript 语言精粹读书笔记(第四章)
- JavaScript 语言精粹读书笔记(第五章)
- JavaScript语言精粹 读书笔记(一)
- JavaScript语言精粹 读书笔记(二)
- JavaScript语言精粹 读书笔记(三)
- 《javascript语言精粹》读书笔记 Item2 对象
- 《JavaScript语言精粹》读书笔记(一)
- 《javascript语言精粹》读书笔记——函数
- 黑马程序员:Java基础总结----泛型(高级)
- 设计模式之——Factory(工厂模式)
- PHP中$_SERVER的详细参数与说明
- Ubuntu下载Android源码过程
- Java基础知识_ArrayList和HashSet的比较,以及HashCode方法
- javascript语言精粹----------------------读书笔记之关于this的理解问题
- 跨交换机实现vlan间通信
- JavaScript中的$符号
- 网站访问出现Validation of viewstate MAC failed错误是怎么一回事?
- [Effective C++] 让自已习惯C++
- str.Format() Error: 没有与参数列表匹配的重载函数
- 最全最新的java经典学习课件
- poj3311 Hie with the Pie
- IPTV & OTT发展趋势分析