javascript中this关键字的应用

(1).作为对象方法调用。this 被自然绑定到该对象。

(2).作为函数调用。函数也可以直接被调用,此时 this 绑定到全局对象。对于内部函数,这种绑定到全局对象的方式会产生另外一个问题,内部函数的 this 应该绑定到其外层函数对应的对象上,那么用就变量替代的方法,将this保存在一个变量中,该变量一般被命名为 that。

(3).作为构造函数调用。this 绑定到新创建的对象上。

(4).使用 apply 或 call 调用。This可以替换对象。

时间: 2024-08-05 16:58:53

javascript中this关键字的应用的相关文章

Javascript中的关键字和保留字

ECMA-262中描述了一组具有特定用途的关键字,可用于表示控制语句的开始或结束,或者用于执行特定操作等.规定:关键字属于语言保留,不可以用于标示符. ECMAScript的全部关键字(*为第五版新增): break do instanceof typeof case else new var catch finally return void continue for switch while debugger*   function this with default if throw de

JavaScript中this关键字的使用比较

JavaScript中this关键字的使用比较 this关键字在JavaScript中,用的不能说比较多,而是非常多.那么熟悉this关键字的各种用法则显得非常关键. this有时候就是我们经常说的上下文,这个东西的指代对象.它灵活多变,有时候你看它是对象,有时候是window宿主对象. 1.this指向宿主对象 function myWindow() { this.id = 1; // 等价于window.id = 1 console.log(this); // 这里的this就是window

深入解析Javascript中this关键字的使用

深入解析Javascript中面向对象编程中的this关键字 在Javascript中this关键字代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.比如: function TestFunction(){ this.demoVal='This is a demo variable'; }; 随着函数使用的场合不同,this的值会发生改变.但是有一个总的原则:this指的是调用函数的那个对象. 接下来分情况讨论this关键字的使用: 1. 纯粹的函数调用(这是函数的通常用法,属于全局性

Javascript中this关键字详解

原文出处:http://www.cnblogs.com/justany/archive/2012/11/01/the_keyword_this_in_javascript.html Quiz 请看下面的代码,最后alert出来的是什么呢? 1 var name = "Bob"; 2 var nameObj ={ 3 name : "Tom", 4 showName : function(){ 5 alert(this.name); 6 }, 7 waitShowNa

JavaScript中var关键字的使用详解

作用 声明作用:如声明个变量. 语法 ? 1 var c = 1; 省略var 在javascript中,若省略var关键字而直接赋值,那么这个变量为全局变量,哪怕是在function里定义的. ? 1 2 3 4 5 6 7 8 <script type="text/javascript">   function Define() {     a = 2;   }   function Hello() {     alert(a);   } </script>

JavaScript中this关键字的理解

this是个什么鬼? this是JavaScript中的一个关键字,代表当前对象. this在那些情况下会指向谁?如下文. 一.调用全局变量(Global Variable) var x="我是全局变量呦"; function obj() { alert(this.x); } obj(); //我是全局变量呦 此时,this指向了全局变量x. 二.将this作为对象的方法来调用. function test() { alert(this.x); } var obj={}; obj.x=

javascript中this关键字之我见

javascript中的this关键字是个很令人头疼的问题,学习的时候也是个难点,觉得这个东西很玄乎,很乱: 下面是我个人的一点观点: 首先我们来看看直接定义的全局函数: function introduce() {      alert("Hello, I am limeng"); } 这个函数的this指向谁呢? 定义在全局的函数,其实也就是window对象的一个方法,函数的所有者就是当前页面,也就是window对象,我们alert一下看看: var name = "He

深入了解JavaScript中的关键字

this是Javascript语言的一个关键字它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用,下面分四种情况,详细讨论this的用法,感兴趣的朋友可以了解下. this是Javascript语言的一个关键字. 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.比如, 复制代码代码如下: function test(){ this.x = 1; } 随着函数使用场合的不同,this的值会发生变化.但是有一个总的原则,那就是this指的是,调用函数的那个对象. 下面分四种情

对于JavaScript中this关键字的理解

这是我第二遍学this了,第一遍学的懵懵的.this指哪里都是凭我一个男人的直觉然后控制台输出看看对不对. 刚查了书.博客.视频.理解差不多了.毕竟菜鸡me: 一.首先介绍下什么是this this是一个标识符,它需要和值进行绑定,和变量差不多:但是在你的代码中,它不是和某个具体的值进行绑定.而是绑定到正确的对象上,一般来说参数究竟绑定在哪个对象上都是由定位函数参数规则所决定的. 二.this对象是在运行时基于函数的执行环境绑定的,当函数被作为某个对象的方法调用时,this等于那个对象. 代码一