vue中使用定时器时this指向问题

vue中使用定时器时this指向问题

  • 在写一个很小的demo时,用的普通函数写法,没有用es6箭头函数,发现this变化了,后来查找到了问题所在:
  1. 箭头函数中的this指向是固定不变(定义函数时的指向),在vue中指向vue。
  2. 普通函数中的this指向是变化的(使用函数时的指向),谁调用的指向谁。

箭头函数:

created () 
{ 
setInterval(() => { console.log(this) }, 1000) // vue
setInteval(function () { console.log(this) }, 1000) 
// window,因为setInterval()函数是window对象的函数
}

你可能感兴趣的:(vue中使用定时器时this指向问题)