[TimLinux] JavaScript 中循环执行和定时执行
1. 两对函数
// 循环执行
// 在每个毫秒数之后,调用函数
var timeid = window.setInterval(函数名, 毫秒数);
window.clearInterval(timeid ); // 定时执行:1秒=== 1000毫秒
// 在毫秒数之后,调用函数
var timeid = window.setTimeout(函数名, 毫秒数);
window.clearTimtout(timeid);
2. 闭包与循环调用
今天在开发过程中,想对一个验证失败的循环列表中的元素进行背景色标红,然后再2秒之后,取消标红功能,只保留边框为红色。使用的时候遇到一个提示:“mutable variable accessible from closure”,大概意思就是在setTimeout参数1:函数名对应的函数体中,使用了循环变量,这个变量是可变值,也就是说,在时间到的时候,我们调用函数,就会发现所有循环体针对的都是最后一个循环变量进行的操作。示例代码:
for (var i=0; i < fails.length; i++) {
    setTimeout(function () { console.log(fails[i]; }, 2000);
}
// 出错位置:fails[i],因为i是可变值,在循环完成后,setTimeout含没有调用,
// 当开始调用的时候,i的值已经为比如:3, 这个时候4个setTimout函数操作的
// 就是同一个fails[3]元素了。
3. 如果解决
搜索了一圈,还没有找到解决办法,先记录在这里,等找到解决办法了,再回来完善吧。
[TimLinux] JavaScript 中循环执行和定时执行的更多相关文章
- Windows Server 2008中使用计划任务定时执行BAT bat进行PHP脚本的执行
		
Windows Server 2008中使用计划任务定时执行BAT bat进行PHP脚本的执行 2016年01月03日 17:36:00 持之以恒 阅读数:5520 标签: windows定时任务.b ...
 - javascript中怎么让一个页面执行多个window.onload?
		
我们都知道在javascript中window.onload 只能有一个如果有多个的话后面的会覆盖前面的,今天我们来看看怎么让一个页面执行多个window.onload <script type ...
 - 第112天:javascript中函数预解析和执行阶段
		
关于javascript中的函数: 1.预解析:把所有的函数定义提前,所有的变量声明提前,变量的赋值不提前 2.执行 :从上到下执行,但有例外(setTimeout,setInterval,aja ...
 - loadrunner多场景的串行执行以及定时执行
		
方法一: 既然是脚本串行执行,那在场景设计中必然是要用多个脚本,要注意的是需要将Scenario Schedule中的Schedule by设置为Group的模式.然后按实际需要依次设置每个脚本的Sc ...
 - js中的延迟执行和定时执行
		
在js中,延迟执行函数有两种,setTimeout和setInterval,用法如下: function testFunction(){Console.log('hovertree.com');} s ...
 - Javascript中使用WScript.Shell对象执行.bat文件和cmd命令
		
WScript.Shell(Windows Script Host Runtime Library)是一个对象,对应的文件是C:/WINDOWS/system32/wshom.ocx,Wscript. ...
 - Linux中使用crontab命令定时执行shell脚本或其他Linux命令
		
使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令.例如系统管理员安排一个备份任务使其每天都运行 如何往 cron 中添加一个作业? # crontab –e0 5 * ...
 - 【转】Javascript中使用WScript.Shell对象执行.bat文件和cmd命令
		
WScript.Shell(Windows Script Host Runtime Library)是一个对象,对应的文件是C:/WINDOWS/system32/wshom.ocx,Wscript. ...
 - python中使用schedule模块定时执行任务
		
python中有一个轻量级的定时任务调度的库:schedule.他可以完成每分钟,每小时,每天,周几,特定日期的定时任务.因此十分方便我们执行一些轻量级的定时任务. 代码如下: import sche ...
 
随机推荐
- nginx跨域解决方案
			
nginx跨域解决方案Access to Font at 'http://47.104.86.187/yinjiatoupiao2/iconfont/iconfont.woff' from origi ...
 - jquery 路径动画贝塞尔动画
			
jquery 路径动画贝塞尔动画 <pre><!DOCTYPE html><!DOCTYPE html><html> <head> < ...
 - Python 基础 内置函数 迭代器与生成器
			
今天就来介绍一下内置函数和迭代器 .生成器相关的知识 一.内置函数:就是Python为我们提供的直接可以使用的函数. 简单介绍几个自己认为比较重要的 1.#1.eval函数:(可以把文件中每行中的数据 ...
 - 使用ASP.NET Core 3.x 构建 RESTful API - 3.1 资源命名
			
之前讲了RESTful API的统一资源接口这个约束,里面提到了资源是通过URI来进行识别的,每个资源都有自己的URI.URI里还涉及到资源的名称,而针对资源的名称却没有一个标准来进行规范,但是业界还 ...
 - linux/ubuntu下最简单好用的python opencv安装教程 ( 解决 imshow, SIFT, SURF, CSRT使用问题)
			
希望这篇文章能彻底帮你解决python opencv安装和使用中的常见问题. 懒人请直奔这一节, 一条命令安装 opencv 使用python-opencv常用的问题 在linux中使用python版 ...
 - C++中对C的扩展学习新增语法——namespace
			
NAMESPACE语法 namespace主要解决了命名冲突的问题,语法如下 Namespace注意事项: namespace中可以定义常量.变量.函数.结构体.枚举.类等. namespace 只能 ...
 - node.js和ionic
			
1.安装node.js node -v 检测node文件是否安装成功 node --version 检查node版本号 2.Npm node package manager 管理工具 管理模 ...
 - 【接口测试】HttpClient+fastJson 总结与案例
			
多次理解,反复练习,破釜沉舟. HttpCLient是什么 Apache Jakarta Common 下的子项目 支持 HTTP 协议的客户端编程工具包 支持 HTTP 协议最新的版本 怎么利用Ht ...
 - Java开发中常用jar包整理及使用
			
本文整理了我自己在Java开发中常用的jar包以及常用的API记录. <!-- https://mvnrepository.com/artifact/org.apache.commons/com ...
 - Linux基础命令复习01
			
一.Linux中的基本查看.查找命令: 1.ls 查看目录信息: -l #查看属性,以长格式显示 -d #查看本身属性 -A #显示包括以.开头的隐藏文档 -h #提供易读的单位 -R #表示递 ...