ngOnInit中 开启一个setInterval定时器 为什么可以重复打印啊 组件初始化不就是调用一次?

来源:6-8 view钩子

weixin_慕莱坞8171489

2019-01-16

ngOnInit中 开启一个setInterval定时器 为什么可以重复打印啊 组件初始化不就是调用一次?
是因为事件队列的原因么?

写回答

1回答

纯情掉了一地

2019-01-17

js是单线程,一行一行的按照顺序执行,先执行主线程的同步代码,然后再执行异步队列中的代码。 定时器是被放到异步队列中的,在同步代码执行完毕,event-loop机制就会去轮询异步代码。 setInteval是循环定时器,是被放到异步队列。 它接受两个参数,第一个是要执行函数,第二个是毫秒,比如1000,就是间隔1000毫秒调用一次前面的函数。 建议学习下定时器函数,它是浏览器内部封装好的一个方法,每次生成会自动分配一个id,  使用变量引用这个定时器,同时调用clearInterval()方法传入这个引用。可以清除指定定时器
1
0

Angular4.0从入门到实战 打造股票管理网站

Angular新特性,教你熟练使用 Angular 和 Typescript 开发组件式单页应用

2683 学习 · 1361 问题

查看课程