js间隔调用和延迟调用

4.1 定时器

setInterval(表达式,毫秒数)

语法:var timer = null;

timer = setInterval(需要执行的函数,执行间隔时间ms);

例如:var timer = null;

timer = setInterval(function(){

console.log('hello world!');

},2000);

总结说明:

  1. 要把定时器下边的任务执行完毕后 才会去执行定时器的内容
    2.定时执行中this指向window
    3.每创建一个定时器 就会有一个唯一的id被返回 id从开始 之后累加

    首先明确两点:

    1.JS 执行机制是单线程。

    2.JS的Event loop是JS的执行机制

    按照这种的分类方式JS的执行机制是:

    异步的编程思想:

    首先,判断JS是同步还是异步,同步进入主线程,异步进入Event table

    其次,异步任务在Event table中注册函数,当满足特定的条件,被推入Event queue(消息队列)最后,同步任务进入主线程后一直执行,直到主线程空闲后,才会去Event queue中查看是否有可执行的异步任务,如果有就推入主线程中执行。

    清除间隔调用

    既然间隔调用每隔一段时间就会自动执行一次,那么清除间隔调用就势必存在。

    语法:clearInterval(变量标识)

    例如:clearInterval(timer);

    上述代码就能够将刚刚创建的定时器移除掉,令其不在间隔一段时间后自动再次执行。

    延时器

    延迟调用又叫延迟调用函数。是一种能够等待一定时间后在执行的函数。

    语法:var timer = null;

        timer = setTimeout(需要执行的函数,等待的时间);

    例如:var wait = null;

        wait = setTimeout(function(){

    console.log('hello world!');

        },2000);

    根据语法所述,上述代码所表示的含义为:等待2s后打印一句

おすすめ

転載: blog.csdn.net/m0_51281306/article/details/121340034