• setTimeout和setInterval的区别


    setTimeout()定义和用法

    关于setTimeout方法的介绍

    定义

    setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。

    语法

    setTimeout(code,millisec)
    参数
    code:必需。要调用的函数后要执行的 JavaScript 代码串。
    millisec: 必需。在执行代码前需等待的毫秒数。

    提示

    setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()

    function test(){
    alert("test");
    }
    //使用方法名字执行方法
    var t1 = window.setTimeout(test,1000);
    var t2 = window.setTimeout("test()",3000);//使用字符串执行方法
    window.clearTimeout(t1);//清除定时器

    setInterval()定义和用法

    //实时刷新时间单位为毫秒
    setInterval('refreshQuery()',8000); 
    /* 刷新查询 */
    function refreshQuery(){
       $("#mainTable").datagrid('reload',null);
    }

    业务场景

    • setTimeout用于延迟执行某方法或功能
    • setInterval则一般用于刷新表单,对于一些表单的假实时指定时间刷新同步

    settimeout传参数的几种方法,直接函数句柄调用传参会导致settimeout失效:

    1)字符串调用传参

    function test(name) {
        alert('hello' + ' ' + name);
    }
    let param = 'Jack';
    setTimeout('test(param)',1000);

    2)将函数调用放在一个匿名函数里直接传参

    function test(name) {
        alert('hello' + ' ' + name);
    }
    let testName='assistant'
    setTimeout(function () {
        test(testName);
    }, 1000); //可以获取到外层参数

    3)匿名函数或函数句柄调用可以通过settimeout传参

    setTimeout(
      function(value1,value2){
        console.log(value1+"+"+value2);
        console.log(value1+value2)},2000, 1,2)
  • 相关阅读:
    Docker-MsSqlServer和安装版本异同
    ASP.NET Core入门
    开源网站.NETMVC+ Layui+SqlSugar+RestSharp
    SqlSugar ORM已经支持读写分离
    【开源框架】SqlSugarRepository 全库ORM 正式发布
    花几分钟搭建一个自已的GIT服务器
    [开源ORM] SqliteSugar 3.x .net Core版本成功上线
    N[开源].NET CORE与MySql更配, MySqlSugar ORM框架 3.x
    Dapper ORM VS SqlSugar ORM的 8场对决
    .NET 开源SqlServer ORM框架 SqlSugar 3.0 API
  • 原文地址:https://www.cnblogs.com/makai/p/13341156.html
Copyright © 2020-2023  润新知