`
holdbelief
  • 浏览: 697915 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

setTimeout调用有返回值的函数

阅读更多

    连续写了《setTimeout的一些体会》、《setTimeout和setInterval》两篇,又想到如果setTimeout()函数如果调用的函数又返回值的话如何接收这个返回值呢?
    写了个例子:
<html>
<head>
<title>setTimeout调用又返回值的函数</title>
<script language="javascript" type="text/javascript">
    var retValue = "";

    function test()
    {
        return "哈哈哈哈哈";
    }

    function clickButton1()
    {
        var iTimeoutId = setTimeout("retValue = test() ",1000);
    }
   
    function clickButton2()
    {
        alert(retValue);
    }
   
</script>
</head>
<body>
    <input type="button" onclick="clickButton1()" value="button1">
    <input type="button" onclick="clickButton2()" value="button2">
</body>
</html>


点击“button1”之后1秒后,再点击“button2”按钮,弹出上面的窗口。

  • 大小: 29.2 KB
分享到:
评论
3 楼 kimmking 2008-07-31  
var retValue = '';  可以去掉

IE和FF中都通过
2 楼 zbm2001 2008-07-30  
就是让 retValue = test() 赋值表达式在一秒后执行。
1 楼 hozaka 2008-07-30  
我觉得应该标红的是
var retValue = '';

在函数之外(全局范围)定义了一个变量,并且将第一个函数的返回值赋予这个变量。因为作用域比两个函数都大,所以第二个函数也能访问到

相关推荐

    高阶函数-函数柯里化- 手写

    一、高阶函数 定义:如果一个函数符合...常见的高阶函数有:Promise、setTimeout、arr.map() 等。 二、函数的柯里化 通过函数调用继续返回函数的方式,实现多次接受参数最后统一处理的函数编码形式,叫做函数的柯里化。

    JS API 接口接收与返回

    //第三参数是函数的别名 客户端通过别名来调用函数 $server-&gt;add('foo', 'Example1', 'ex1_foo'); $server-&gt;add('bar', new Example1(), 'ex1_bar'); $server-&gt;setCharset('UTF-8'); //设置编码 $server-&gt;set...

    js中的setInterval和setTimeout使用实例

    该方法会不停地循环调用函数,直到使用 clearInterval() 明确停止该函数或窗口被关闭。clearInterval() 函数的参数即 setInterval() 返回的 ID 值。 语法 setInterval(code,millisec[,”lang”])code 必需。要调用的...

    js实现秒表以及进度条.md

    3)window.setTimeout(函数名称,时间)//延时定时器,执行一次 4)window.clearTimeout(定时器的返回值);停止定时器 2:document.getElementById() 功能:获取特定ID元素的节点 参数:ID的属性名 返回值:dom...

    set-timeout:在给定的上下文中延迟函数的调用

    设置超时 在给定的上下文中延迟函数的调用。 基于优秀的超时实现,作为一个小模块提供给您。使用安装npm i set-timeout --save用法充当setTimeout的包装器。 在给定的ms (毫秒)延迟之后,在指定的context调用给定...

    使用Promise解决多层异步调用的简单学习心得

    前言 ...我当时想的是,微软又在脑洞大开的瞎捣鼓了。 结果没想到,到了2015年,Promise居然写进ES6标准里面了。而且一项调查显示,js程序员们用这玩意用的还挺high。 讽刺的是,作为早在2012年就在Metro应用开发接口...

    前端Promise的理解的面试题

    在没有它之前,javascript中的异步处理,大多是利用回调函数来实现的。典型的几种如下:(1)setTimeout (2)ajax(3)nodejs中的文件读取。现在有了promise,就可以对这些异步操作进行改写了。 主要学习内容 ● ...

    浅谈JavaScript的计时器对象

    1、JavaScript计时器,我们可以在设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。 计时器类型: 1)一次性计时器:仅在指定的延迟时间之后触发一次。 2)间隔性触发计时器:每隔一定的时间间隔就触发...

    油门-ts:正确键入的通用打字稿油门功能

    产生限制函数的返回值,或在限制/取消时未定义。 节流函数保留原始函数的类型签名,再加上void 。 返回取消功能,该功能可以清除超时,并阻止将来对受限制的功能的调用。 卸载React/查看组件时很有用。 用法 ...

    Sinon.JS:测试 JavaScript 的间谍、存根和模拟-开源

    测试 spy 是一个函数,它记录参数、返回值、this 的值以及为其所有调用抛出的异常(如果有)。 有两种类型的间谍:一些是匿名函数,而另一些则包装被测系统中已经存在的方法。 模拟应该只用于被测方法。

    angularjs之$timeout指令详解

    angular.js的$timeout指令对window.setTimeout做了一个封装,它的返回值是一个promise对象.当定义的时间到了以后,这个promise对象就会被resolve,回调函数就会被执行. 如果需要取消一个timeout,调用$timeout.cancel...

    ASP API 接口接收与返回

    //第三参数是函数的别名 客户端通过别名来调用函数 $server-&gt;add('foo', 'Example1', 'ex1_foo'); $server-&gt;add('bar', new Example1(), 'ex1_bar'); $server-&gt;setCharset('UTF-8'); //设置编码 $server-&gt;set...

    javascript常用对象梳理

    功能:取消以前的定时设置,其中的参数是用setTimeout设置时的返回值。 8. setInterval方法 语法格式: window.setInterval(代码字符表达式,毫秒数) 功能:设定一个时间间隔后(第二个参数),反复执行“代码字符...

    JavaScript笔记

    7.数据类型转换函数 :(方法前不需要对象调用的:全局函数) |--toString():转换成字符串。所有数据类型均可转换为 string 类型; |--parseInt():强制转换成整数。如果不能转换,则返回 NaN(not a number); ...

Global site tag (gtag.js) - Google Analytics