首页 课程 师资 教程 报名

理解Vue中的this关键字

  • 2021-12-03 09:22:37
  • 2022次 星辉

this

this 指向并不是在函数定义的时候确定的,而是在调用的时候确定的。换句话说,函数的调用方式(直接调用、方法调用、new调用、bind、call、apply、箭头函数)决定了 this 指向。

直接调用

函数内部的 this 指向全局对象,在浏览器中全局对象是 window,在 NodeJs 中全局对象是 global。直接调用并不是指在全局作用域下进行调用,在任何作用域下,直接通过 函数名(...) 来对函数进行调用的方式,都称为直接调用。

方法调用

函数中的 this 指向调用该方法的对象。通过对象来调用其方法函数,它是 对象.方法函数(...) 这样的调用形式。

new调用

在 es5 中,用 new 调用一个构造函数,会创建一个新对象,而其中的 this 就指向这个新对象。

箭头函数

箭头函数没有自己的 this 绑定,箭头函数中使用的 this,其实是直接包含它的那个函数或函数表达式中的 this。

函数在当作构造函数的时候 也同样可以用call代替

function person(name){
  var _newObj = {
constructor:person,
_proto_:person.prototype
}
_newObj.constructor(name)
// _newObj.constructor.call(_newObj,name)
return _newObj
})()

如果您想了解更多相关知识,不妨来关注一下星辉的Vue.js视频教程,视频内容由浅到深,通俗易懂,适合没有基础的小伙伴学习,相信对大家会有所帮助的。

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交