首页 > 试题广场 >

下面关于 this 工作原理的描述,哪一个是错误的?

[单选题]
下面关于 this 工作原理的描述,哪一个是错误的?
  • 在全局范围内,this指向全局对象(浏览器下指window)
  • 对象函数调用时,this指向当前对象
  • 全局函数调用时,this指向全局函数
  • 使用new实例化对象时,this指向新创建的对象
this有四种情况!
1)当在函数调用的时候指向widow
2)当方法调用的时候指向调用对象
3)当用apply和call上下文调用的时候指向传入的第一个参数
4)构造函数调用指向实例对象
发表于 2017-07-12 11:22:48 回复(20)
函数里的this可以分为两种来记忆:
如果是使用new方式创建对象,this指向新建的那个对象;
如果只是普通的调用,谁调用这个函数,函数里的this就指向谁~
发表于 2017-06-21 18:30:03 回复(7)
 JS中this关键字, 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。
c, 全局函数调用时,this指向全局函数; 应该是指向调用全局函数的对象。
关于JS中的this,详解请看博客:
http://www.cnblogs.com/kongxy/p/4581223.html

发表于 2016-12-17 23:10:54 回复(1)
如何确定this的值,总结如下:
this的值是不确定的,只有当代码运行的时候,才能确定this的值.


1.当this出现在function内部时,谁调用这个函数,this就指向谁.
2.当this出现在function外部时,则this就指向window.

所以,C选项应该是 -- 全局函数调用时,this指向调用全局函数的那个对象.
发表于 2017-07-05 00:51:48 回复(0)
八种!!!!

总结: this  8: 判断this一定不要看定义在哪儿!只看调用时!

1. obj.fun()   this->obj

2. fun() (function(){ ... })() 或 多数回调函数 或 定时器函数   this->window

3. new Fun()   this->new正在创建的新对象

4. 类型名.prototype.共有方法=function(){ ... }   this->将来谁调用指谁,同第一种情况

5. DOMjq中事件处理函数中的this->当前正在触发事件的DOM元素对象

    如果需要使用简化版函数,必须$(this)

6. 箭头函数中的this->箭头函数外部作用域中的this

7. jQuery.fn.自定义函数=function(){ ... }   this->将来调用这个自定义函数的.前的jQuery子对象,不用再$(this)

8. new Vue()中methods中的函数中的this->当前new Vue()对象
发表于 2021-08-05 18:23:13 回复(0)
选项C
全局函数调用时,this指向全局函数的对象,
当对象里面没有值时,this指向windows或document对象。
发表于 2017-11-13 23:58:36 回复(0)
感觉不严谨啊,还有严格模式的情况
发表于 2017-04-06 14:48:48 回复(0)
函数里的this可以分为两种来记忆: 如果是使用new方式创建对象,this指向新建的那个对象; 如果只是普通的调用,谁调用这个函数,函数里的this就指向谁
发表于 2022-07-19 21:18:16 回复(0)
全局函数调用时,this指向全局函数; 应该是指向调用全局函数的对象。
发表于 2023-06-18 15:47:30 回复(0)
this 指向的是对象!对象!函数中this的指向要看函数是如何调用的 ①函数直接调用this指向的是全局对象 ②对象调用时,谁调用指向谁 ③构造函数中this指向实例化之后的对象。 ④ 当用apply和call上下文调用的时候指向传入的第一个参数 ⑤箭头函数自己没有this,箭头函数内部的this就是外部代码块的this
发表于 2022-06-05 00:38:50 回复(0)
js中的this绑定有四种情况:
1. 默认绑定(默认情况下绑定到全局对象(window))
2. 隐式绑定(对象的方法里面的this绑定到当前对象)
3.显式绑定(使用call和apply方法来指定绑定对象)
4.new函数调用绑定(此时this绑定到实例对象上)
可参考《你不知道的javascript》这本书
发表于 2020-07-20 22:29:50 回复(0)
谁调用this指向谁
发表于 2022-05-21 21:28:01 回复(0)
C 应该是指向全局对象
发表于 2022-05-11 12:56:45 回复(0)
C. 在网页的全局上下文中调用函数时,this指向的是window
<script>
    function f(){
        return this;
    }
    f()=== window //true
</script>

发表于 2022-01-06 19:21:00 回复(0)
自己调自己不行的
发表于 2022-01-05 14:40:51 回复(0)
全局函数调用时, this指向Windows
发表于 2021-12-17 00:08:41 回复(1)
this有多种情况!
1)当作函数调用的时候指向widow
2)当方法调用的时候指向调用对象
3)当用apply和call上下文调用的时候指向传入的第一个参数
4)构造函数调用指向实例对象
5)箭头函数会捕获其所在(即定义的位置)上下文的this值, 作为自己的this值。
发表于 2021-12-13 10:47:42 回复(1)
应该是指向调用全局函数的对象
发表于 2021-05-13 23:16:49 回复(0)
全局函数调用时,this指向调用全局函数的对象。
发表于 2021-05-10 22:36:07 回复(0)
指向调用全局函数的对象
发表于 2021-02-11 16:30:35 回复(0)