简单学习JavaScript中的for语句循环结构
可以直接看示例,用得太多了,很简单
(function() { for(var i=0, len=demoArr.length; i<len; i++) { if (i == 2) { // return; // 函数执行被终止 // break; // 循环被终止 continue; // 循环被跳过 }; console.log('demo1Arr['+ i +']:' + demo1Arr[i]); } })();
关于for循环,有一下几点需要注意
- for循环中的i在循环结束之后任然存在与作用域中,为了避免影响作用域中的其他变量,使用函数自执行的方式将其隔离起来()();
- 避免使用for(var i=0; i<demo1Arr.length; i++){} 的方式,这样的数组长度每次都被计算,效率低于上面的方式。也可以将变量声明放在for的前面来执行,提高阅读性
- var i = 0, len = demo1Arr.length;
- for(; i<len; i++) {};
跳出循环的方式有如下几种
- return 函数执行被终止
- break 循环被终止
- continue 循环被跳过
完整实例:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>遍历详解: for</title> <script src="../script/jquery-2.0.3.js"></script> </head> <body> </body> <script> var demo1Arr = ['Javascript', 'Gulp', 'CSS3', 'Grunt', 'jQuery', 'angular']; (function() { for(var i=0, len=demo1Arr.length; i<len; i++) { if (i == 2) { // return; // 函数执行被终止 // break; // 循环被终止 continue; // 循环被跳过 }; console.log('demo1Arr['+ i +']:' + demo1Arr[i]); } })(); </script> </html>
相关推荐
-
javascript实现图片循环渐显播放的方法
本文实例讲述了javascript实现图片循环渐显播放的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <html> <title>图片的循环渐显播放效果代码</title> <head> <!--1.将下面的代码插入到HEML的<head></head>之间: --> <script language=javaScript> <!--// sandra0 = new Image()
-
javascript下for循环用法小结
我们最常用的一种是 for(循环变量初值;循环条件;递增值){语句;} 例 for(var x=0;x [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 下面说下其它的用法 (1)省略表达式1,这个时候应在for语句前给循环变量赋初值,注意其后的;不能省略 例: var x=0; for(;x [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] (2) 省略表达式2,也就是循环条件循环无终止进行,也就是表达式2始终为真. 例: for(var x=0;;x++) { d
-
javascript forEach通用循环遍历方法
复制代码 代码如下: var forEach = (function(){ //数组与伪数组的遍历 var _Array_forEach = function (array, block, context) { if (array == null) return; //对String进行特殊处理 if(typeof array == 'string'){ array = array.split(''); } var i = 0,length = array.length; for (;i < l
-
JavaScript的递归之递归与循环示例介绍
递归与循环 对于不同类型的需要重复计算的问题,循环和递归两种方法各有所长,能给出更直观简单的方案.另一方面,循环和递归的方法可以互相转换.任何一个循环的代码都可以用递归改写,实现相同的功能:反之亦然.在不失去其普遍性的前提下,可以把循环和递归分别用下列伪代码概括. 伪代码格式说明:循环采用while形式:变量不加定义:赋值用:=:条件表达式和执行的语句都写成函数的形式,圆括号内写上相关的值.其他语法方面,尽量接近Javascript的规范. 复制代码 代码如下: //pseudo code of
-
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
本文实例讲述了javascript使用for循环批量注册的事件不能正确获取索引值的解决方法.分享给大家供大家参考.具体分析如下: 可能不少朋友会遇到一个问题,那就是当使用for循环批量注册事件处理函数,然后最后通过事件处理函数获取当前元素的索引值的时候会失败,先看一段代码实例: 复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name=&q
-
javascript之循环停顿上下滚动
extractNodes函数解决各浏览器的节点计算问题.FireFox把换行符也算成一个节点,很不合理啊. 先用appendChild复制前面的四个节点到底部,使得头尾是一样的内容,以作后用.记得做flash补间循环运动的时候就是这样要头尾一样. 通过setInterval隔时运行rolltxt函数. rolltxt函数首先计算的是间隔停顿的高度,滚动多高就要停顿一下,这个高度我也不知道怎么算出来的,跟CSS有关系,我是试出来的 用求余数的方法可以判断是否已经滚过了所设的间隔高度.如果余数不
-
跟我学习javascript的for循环和for...in循环
大家都知道在JavaScript中提供了两种方式迭代对象: for 循环: for..in循环: 一.for循环 不足: 在于每次循环的时候数组的长度都要去获取: 终止条件要明确: 在for循环中,你可以循环取得数组或是数组类似对象的值,譬如arguments和HTMLCollection对象.通常的循环形式如下: // 次佳的循环 for (var i = 0; i < myarray.length; i++) { // 使用myarray[i]做点什么 } 这种形式的循环的不足在于每次循环的
-
跟我学习javascript的循环
1.优先使用数组而不是Object类型来表示有顺序的集合 ECMAScript标准并没有规定对JavaScript的Object类型中的属性的存储顺序. 但是在使用for..in循环对Object中的属性进行遍历的时候,确实是需要依赖于某种顺序的.正因为ECMAScript没有对这个顺序进行明确地规范,所以每个JavaScript执行引擎都能够根据自身的特点进行实现,那么在不同的执行环境中就不能保证for..in循环的行为一致性了. 比如,以下代码在调用report方法时的结果就是不确定的: f
-
JavaScript中对循环语句的优化技巧深入探讨
循环是所有编程语言中最为重要的机制之一,几乎任何拥有实际意义的计算机程序(排序.查询等)都里不开循环. 而循环也正是程序优化中非常让人头疼的一环,我们往往需要不断去优化程序的复杂度,却因循环而纠结在时间复杂度和空间复杂度之间的抉择. 在 javascript 中,有3种原生循环,for () {}, while () {}和do {} while (),其中最为常用的要数for () {}. 然而for正是 javascript 工程师们在优化程序时最容易忽略的一种循环. 我们先来回顾一下for
-
javascript中利用数组实现的循环队列代码
//循环队列 function CircleQueue(size){ this.initQueue(size); } CircleQueue.prototype = { //初始化队列 initQueue : function(size){ this.size = size; this.list = new Array(); this.capacity = size + 1; this.head = 0; this.tail = 0; }, //压入队列 enterQueue : functio
-
javascript中的循环语句for语句深入理解
程序实现中经常要用到循环语句,其中for循环是多数语言都有的.在javascript中,for循环有几种不同的使用情况,下面就分别来讲述我的理解. 第一种:(通常情况,循环执行相关操作) 复制代码 代码如下: var objA=document.getElementsByTagName("a"); var i,max; for(i=0,max=objA.length;i<max;i++){ objA[i].onclick=function(){ alert(this.innerH
-
javascript 循环读取JSON数据的代码
服务端后台返回到客户端的JSON格式字符串: var str = '[{"uname":"王强","day":"2010/06/17"},{"uname":"王海云","day":"2010/06/11"}]'; 我们把它转换成JSON对象:var jsonList=eval("("+str+")");这时候
-
javascript 循环语句 while、do-while、for-in、for用法区别
前两个唯一的差别就是循环和判断的顺序不同,do-while比while多循环一次,我就不举例了. for循环相信大家也熟的不能再熟了,我们就看for-in这一句. 这个其实是针对数组的,js中数组的初始化也挺奇特的比如我们在script结点里写:(另外注意下数组的初始化,用的是中括号) "); var a=[3,4,5,7]; for(var test in a){ document.write(test+": "+a[test]+""); } -->
-
JavaScript中for..in循环陷阱介绍
大家都知道在JavaScript中提供了两种方式迭代对象: (1)for 循环: (2)for..in循环: 使用for循环进行迭代数组对象,想必大家都已经司空见惯了.但是,使用for.. in循环时,大家可要注意了,为什么这么说呢?大家听我娓娓道来.... javascript提供了一种特殊的循环(也就是for .. in循环),用来迭代对象的属性或数组的每个元素,for...in循环中的循环计数器是字符串,而不是数字.它包含当前属性的名称或当前数组元素的索引. 案例一: 复制代码 代码如下:
-
Javascript中的for in循环和hasOwnProperty结合使用
与in操作符相比,for in 在循环对象的属性时也会遍历原型链,for in 不会读取不可枚举属性,如数组的length属性. 小结 当检测某个对象是否拥有某个属性时,hasOwnProperty 是唯一可以完成这一任务的方法,在 for in 循环时,建议增加 hasOwnProperty 进行判断,可以有效避免扩展本地原型而引起的错误. 与in操作符相比,for in 在循环对象的属性时也会遍历原型链,for in 不会读取不可枚举属性,如数组的length属性. 复制代码 代码如下: /
-
javascript闭包传参和事件的循环绑定示例探讨
今天看到一个javascript的题目,按常理循环绑定事件,但是得到的结果却不是想要的. 复制代码 代码如下: <a href="#">text</a> <br> <a href="#">link</a> <script> var as = document.getElementsByTagName('a'); for ( var i = as.length; i--; ) { as[i].on
-
JavaScript中利用各种循环进行遍历的方式总结
为了方便例子讲解,现有数组和json对象如下 var demoArr = ['Javascript', 'Gulp', 'CSS3', 'Grunt', 'jQuery', 'angular']; var demoObj = { aaa: 'Javascript', bbb: 'Gulp', ccc: 'CSS3', ddd: 'Grunt', eee: 'jQuery', fff: 'angular' }; for in for(var item in arr|obj){} 可以用于遍历数组和
随机推荐
- 基于angular中的重要指令详解($eval,$parse和$compile)
- 一个挺有意思的Javascript小问题说明
- 修改服务器配置,让asp.net文件后缀名随心所欲
- dvbbs 8.2 SQL Injection注射漏洞分析
- Linux系统下Tomcat8启动速度很慢的解决方法
- [Oracle] 彻底搞懂Oracle字符集
- JS控制图片等比例缩放的示例代码
- PHP字符串的编码问题的详细介绍
- Javascript编程之继承实例汇总
- 跟老齐学Python之编写类之二方法
- 将替代ListView的RecyclerView 的使用详解(一)
- Jquery Ajax 学习实例2 向页面发出请求 返回JSon格式数据
- easyUI实现类似搜索框关键词自动提示功能示例代码
- VBS教程:函数-数学函数
- SQL有外连接的时候注意过滤条件位置否则会导致网页慢
- PHP获取数组的键与值方法小结
- js+css实现tab菜单切换效果的方法
- 学习Java九大内置对象
- JS实现的添加弹出层并完成锁屏操作示例
- 详解C语言编程中的函数指针以及函数回调