js中this应用
2024-08-20 21:07:48
this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。但是总有一个原则,那就是this指的是调用函数的那个对象。
1、纯粹函数调用。
function test() {
this.x = 1;
alert(x);
}
test();
其实这里的this就是全局变量。看下面的例子就能很好的理解其实this就是全局对象Global。
var x = 1;
function test() {
alert(this.x);
}
test();//1 var x = 1;
function test() {
this.x = 0;
}
test();
alert(x);//
2、作为方法调用,那么this就是指这个上级对象。
function test() {
alert(this.x);
} var o = {};
o.x = 1;
o.m = test;
o.m(); //
3、作为构造函数调用。所谓构造函数,就是生成一个新的对象。这时,这个this就是指这个对象。
function test() {
this.x = 1;
}
var o = new test();
alert(o.x);//
4、apply调用
this指向的是apply中的第一个参数。
var x = 0;
function test() {
alert(this.x);
} var o = {};
o.x = 1;
o.m = test;
o.m.apply(); //0
o.m.apply(o);//
当apply没有参数时,表示为全局对象。所以值为0。
最新文章
- jQuery简单实现iframe的高度根据页面内容自适应的方法(转)
- JavaScript学习笔记之数值
- [html]三列居中自动伸缩的结构
- 【转】Java日期计算之Joda-Time
- java面试每日一题5
- 消息队列与RabbitMQ
- 关于SQL中数据类型(float和real)和 .NET Framework 中数据类型(float和double)的问题
- xml(3)--dom4j实现crud操作
- JAVA传值与传址
- TensorFlow文档翻译-01-TensorFlow入门
- 基于 HTML5 的 3D 工控隧道案例
- UITextField 基本设置
- MongoDB之Array Object的特殊操作
- 研究生flag
- 查看、生成 SSH 密钥用于安全登陆
- javascript精雕细琢(二):++、--那点事
- 20162303石亚鑫 第十二周hash补充博客
- MyBatis的简单入门学习
- 【转载】retrofit 2 源码解析
- Event 同步机制
热门文章
- hdu 3474 Necklace 单调队列
- sql server web管理软件
- CodeForces 604A(浮点数)
- SQL语句的拼凑
- JavaScript &; jQuery &; Bootstrap
- css 样式加载次序
- Laravel之Ueditor
- Linux时间同步+国内常用的NTP服务器地址
- How do I use the API correctly
- 解决linux-mysql 登录时,报异常:Access denied for user 'root'@'localhost'