JavaScript学习(2)
时间就像海绵里的水,要挤总还是有的,所以在最近不是太忙的时间里,我选择了挤时间,一点点的挤出了大把的时间,于是乎便迎来了我对javascript的第二阶段的学习,首先说下, 说起JavaScript大家并不陌生,翻开各种各样的书籍,都是似曾相识但又模模糊糊朦朦胧胧,就比如我现在要说的知识点一setTimeout()和setInterval().
1.setTimeout()延时调用函数:
setTimeout(function(){
alert('我是延时调用函数');
},1000);
setTimeout可以接受两个参数,第一个参数是要确定在规定延时后要执行的代码段,第二个参数是说要过多久开始执行该代码段,那么我再来举个例子:
setTimeout('alert(我是不规范的延时调用函数)',1000);
以上这两种方式都可以正常运行,但是由于传入字符串有可能会造成解析错误,甚至出现不必要的错误,因此传入字符串作为要执行的方法是不推荐的.setTimeout()方法返回的是延时队列的id,有些同学可能会好奇,既然我要延时调用某个方法,那万一出现了我规定时间还没到我就想销毁这个延时家在函数怎么办,对这在最初确实是个问题也是个难点,因为在我还没有开始认真思考这些的时候虽然有用到setTimeout()方法,但是就是不知道怎么停止或者销毁,下面就来看小编给大家带来的例子:
var timeID = setTimeout(function(){
alert('我是延时调用函数');
},1000);
if(达到一定条件后销毁函数){
clearTimeout(timeID);
}
以上就是我对延时加载函数setTimeout()方法的理解.
2.间歇调用setInterval():
setInterval()和setTImeout()方法的用法非常相似,但是clearInterval()远比clearTimeout()的作用大的多,因为在一个间歇调用中如果你不主动去停止他,那么他将变为一个死循环甚至更糟的结果,所以如果使用到了setInterval()时间一定要记得关掉,不过在正式的开发环境中一般很少用到setInterval();因为setInterval完全可以由setTimeout方法代替,下面我们一起来看个例子:
var a = 10;
var b = 0;
var timeid = null;
function interval(){
b++;
if(b=a){
clearInterval(timeid);
}
}
timeid = setInterval(interval,1000); 用setTimeout代替等价于=>
var a = 10;
var b = 0;
var timeid = null;
function interval(){
b++;
if(b<a){
setTimeout(interval,1000);
}else{
alert('ok')
}
}
setTimeout(interval,1000);
这些便是我对与间歇调用和延时调用的理解,再次记录下 希望可以帮助有帮助的朋友.
JavaScript学习(2)的更多相关文章
- JavaScript学习(一) —— 环境搭建与JavaScript初探
1.开发环境搭建 本系列教程的开发工具,我们采用HBuilder. 可以去网上下载最新的版本,然后解压一下就能直接用了.学习JavaScript,环境搭建是非常简单的,或者说,只要你有一个浏览器,一个 ...
- Web编程基础--HTML、CSS、JavaScript 学习之课程作业“仿360极速浏览器新标签页”
Web编程基础--HTML.CSS.JavaScript 学习之课程作业"仿360极速浏览器新标签页" 背景: 作为一个中专网站建设出身,之前总是做静态的HTML+CSS+DIV没 ...
- JavaScript学习(3):函数式编程
在这篇文章里,我们讨论函数式编程. 什么是函数式编程?根据百度百科的描述,“函数式编程是种编程典范,它将电脑运算视为函数的计算.函数编程语言最重要的基础是 λ 演算(lambda calculus). ...
- JavaScript学习(2):对象、集合以及错误处理
在这篇文章里,我们讨论一下JavaScript中的对象.数组以及错误处理. 1. 对象 对象是JavaScript中的一种基本类型,它内部包含一些属性,我们可以对这些属性进行增删操作. 1.1 属性 ...
- JavaScript学习13 JavaScript中的继承
JavaScript学习13 JavaScript中的继承 继承第一种方式:对象冒充 <script type="text/javascript"> //继承第一种方式 ...
- JavaScript学习12 JS中定义对象的几种方式
JavaScript学习12 JS中定义对象的几种方式 JavaScript中没有类的概念,只有对象. 在JavaScript中定义对象可以采用以下几种方式: 1.基于已有对象扩充其属性和方法 2.工 ...
- JavaScript学习11 数组排序实例
JavaScript学习11 数组排序实例 数组声明 关于数组对象的声明,以前说过:http://www.cnblogs.com/mengdd/p/3680649.html 数组声明的一种方式: va ...
- JavaScript学习10 JS数据类型、强制类型转换和对象属性
JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...
- JavaScript学习09 函数本质及Function对象深入探索
JavaScript学习09 函数本质及Function对象深入探索 在JavaScript中,函数function就是对象. JS中没有方法重载 在JavaScript中,没有方法(函数)重载的概念 ...
- JavaScript学习08 Cookie对象
JavaScript学习08 Cookie对象 JavaScript Cookie Cookie对象: Cookie是一种以文件的形式保存在客户端硬盘的Cookies文件夹中的用户数据信息(Cooki ...
随机推荐
- iOS 网络与多线程--2.同步Get方式的网络请求(阻塞)
通过Get请求方式同步获取网络数据.一旦发送同步请求,程序将停止用户交互,直至服务器返回数据. 之后在视图控制器文件(ViewController.m)内添加以下代码 在viewDidLoad函数内添 ...
- Css预处理器实践之Sass、Less大比拼
xwei | 2012-07-07 | 网页重构 什么是CSS预处理器? Css可以让你做很多事情,但它毕竟是给浏览器认的东西,对开发者来说,Css缺乏很多特性,例如变量.常量以及一些编程语法,代码难 ...
- C# 缩略图算法
代码写多了,有些使用过的方法和技巧会一时半会想不起来,平日记录下来,方便自己和有需要的人日后查阅. using (var stream = new FileStream(physicalPath, F ...
- var genreModel =storeDB.Genres.Include("Albums").Single(g => g.Name == genre);是什么意思?
g => g.Name == genre代表一个匿名函数.即这里向Single方法传入了一个方法类型的参数. =>左边的g代表方法的参数,可以有多个,如(g,f) => ...,=& ...
- Swift—Core Foundation框架-备
Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API.虽然在Swift中调用这种C语言风格的API比较麻烦,但是在OS X和iOS开发 ...
- javascript 版的 SuperMario
注册博客园4年了,还没发表过一篇文章.明年就是超级马里奥这款游戏诞生30周年了,作为一个喜欢2d卷轴游戏的玩家,决定用js实现一个.目前只实现了基本玩法,得分什么的也还没做.项目的GitHub的地址是 ...
- 使用john破解ubuntu(linux)9.10密码
Title:使用john破解ubuntu(linux)9.10密码 --2011-11-23 15:00 ubuntu 9.10的账户密码加密方式改用sha512了,默认的john是破不了的,还好官方 ...
- PYTHONE的WHILE,BREAK,CONTINUE示例
简短示例: while True: s = raw_input('Enter something : ') if s == 'quit': break if len(s) < 3: print ...
- c++封装性
C++ code到运行程序 作为一个c++程序员这个应该是最应该知道的细节,简言之:编译----链接----可执行的程序.这里所说的细节主要是第一步的细节,编译器如何把c++代码编译成目标代码.概括的 ...
- day03_javaEE四成结构