vue定时器

今天在界面上添加了一个钟表显示,用到了vue定时器,之前按照以前的写法写的,是这样的:

setTimeout(‘getCurrentTime()’,1000);

然后提示:getCurrentTime未定义。在确保我确实没有将函数名写错后,我就利用了this,试着改成了下边这样:

setTimeout(this.getCurrentTime(),1000);

我在该函数中打印了字符串,结果是这样,让我一度担心我的电脑要炸,我经常这样担心:

图片啊

我不知道这是为什么,菜鸟直觉,,,算了,菜鸟没什么直觉,接着,我就在网上直接搜大神的经验了,说是需要使用箭头函数,然后我就试了,在蓦然回首间成功了,嘿嘿,开心,在此用我的拙劣的代码感谢:

setTimeout(() => {
              this.getCurrentTime();
            },1000);

然后,理由呢,是什么?我再查查啊。感谢知识共享的时代,查到了:

箭头函数中的this指向是固定不变的,即是在定义函数时的指向; 
而普通函数中的this指向时变化的,即是在使用函数时的指向。

原来是这样,理解了。

也通过这个例子,让我之前看不懂得有关箭头函数的this问题,今天有点儿理解了。唔,我就得这样,手动狗头

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值