用定时器处理数组 setTimeout()

news/2024/7/6 20:42:56
 1 // 用定时器处理数组
 2     var items = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18];
 3 
 4     function processArray(items, process, callback){
 5         var todo = items.concat();    // 克隆原数组
 6 
 7         setTimeout(function(){
 8             process(todo.shift());    // 取得数组的下个元素并进行处理
 9 
10             // 如果还有需要处理的元素,创建另一个定时器
11             if(todo.length > 0){
12                 setTimeout(arguments.callee, 25);
13             }else{
14                 callback(items);
15             }
16         }, 25);
17     }
18 
19     function outputValue(value){
20         console.log(value);
21     }
22 
23     processArray(items, outputValue, function(){
24         console.log("You have done it!");
25     });

 

转载于:https://www.cnblogs.com/chuyu/p/3345672.html


http://www.niftyadmin.cn/n/2521321.html

相关文章

nginx 配置错误日志输出

listen 80; server_name _; error_log /data/wwwlogs/sms_error.log [error_level];错误级别 error_level: 常见的错误日志级别有[debug | info | notice | warn | error | crit | alert | emerg],级别越高记录的信息越少。 生产场景一般是 warn | error | crit 这…

mysql ERROR 1018

有一段时间我打开mysql的链接发现报错 ERROR 1018 (HY000): Cant read dir of ./test/ (errno: 13 - Permission denied) 错误1018 (HY000):不能读取目录。(errno: 13 -拒绝许可) 原因是因为:你的mysql 数据目录权限被修改了 找到 my.cnf 搜索 datadir 找到你的d…

Horizon View 7 发布Win10桌面一:环境准备

本文将介绍搭建VMware Horizon View 7.0.1并通过即时克隆和链接克隆分别发布Win 10桌面,预计将分三篇发出,分别是环境准备、配置Win10即时克隆桌面池、配置Win10链接克隆桌面池。这是第一篇,主要是关于View相关环境准备的介绍。关于VMware Ho…

技术分享 | 服务端接口自动化测试, Requests 库的这些功能你了解吗?

如果要设计一个强大的接口测试框架,首先需要一个足够好用的 HTTP 第三库,在其基础上进行二次开发。而这个第三库的最佳选择就是 Requests,Requests 是一个优雅而简单的 python HTTP 库,而且内置的功能除了基础的发送请求&#xff…

HTML5 canvas学习笔记(一)

canvas是HTML5中新增的标签,下面是各浏览器的支持程度: canvas的默认大小为:宽-300px,高-150px(注意:画布的大小作为canvas标签的行内样式设置,而且是没有“px”单位的哦, 如果你在…

RMAN 不完全恢复

之前做好备份 SQL> conn scott/abc123 SQL> alter session set nls_date_formatyyyy-mm-dd hh24:mi:ss; 2012-04-24 10:10:53 SQL> select to_char(sysdate,yyyy-mm-dd hh24:mi:ss) from dual; SYSDATE ------------------- 2012-03-12 01:28:15 SQL> drop table …

Percona TokuDB

Percona TokuDB Percona TokuDB 1. TokuDB说明 2. TokuDB安装 3. 使用TokuDB 3.1 快速插入和富索引 3.2 聚集secondary索引 3.3 在线索引创建 3.4 在线添加,删除,扩展,重命名列 3.5 压缩细节 3.6 修改表的压缩 3.7 无…

配置ELK日志系统

ELK 介绍 ELK [官网](https://www.elastic.co/) ELK(elasticsearch,logstash,kibana)可以作为日志收集及分析的一整套系统,通过阿里的普及也有越来越多的公司在使用,使用下来功能还…