js中for循环遍历的写法
众所周知,for循环是编程中必不可少的知识点;那么如何高效的写出循环呢?
我们要先知道for循环的基础样式是由自有变量自增自减和if判组成的;
1 for(条件){
2 执行语句
3 }
而for循环的条件要明确从哪里开始执行?执行到哪里结束?中间的过程是向上还是向下?
假如不理解js基础语法的会犯下面的错误
1 for (var i = 0; i < 10; i++;) { X 第三个条件是最后的条件所以不需要加“ ;”
2 console.log(i);
3 }
其实除了 “i<10”这个条件,其他条件并不是必须放到小括号里,例如定义a的可以放到放行环上面;定义自增自减的。放到for循环的执行语句里面也是可以的;
后期进行复杂循环会用到这些规则;
1 var i = 0;
2 for (;i < aLen;) {
3 console.log(a[i] + 'low');
4 i++;
5 }
必须要明白,JavaScript是由上往下执行的,所以如果逻辑上不通的话会报错的。所以还是建议按照基础语法来写。;
执行一遍再回到条件语句里面,判断参数是否满足条件,如果满足继续执行,不满足跳出循环。继续执行下面代码。
这就是for循环的基本逻辑。
由于大部分for循环都是为了遍历某个数组或对象。所以更新出了新的语法。
下边请看栗子:
1 var a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 'a'];
2 var aLen = a.length;
3 function low() {
4 for (var i = 0; i < aLen; i++) {
5 console.log(a[i] + 'low');
6 }
7 return a;
8 }
9
10 function fashion() {
11 for (i in a) {
12 console.log(a[i] + 'fashion');
13 }
14 return a;
15 }
low() 与fashion() 执行结果和逻辑是相同的;但简洁度明显是fashion() 比较高;
看执行结果;

所以如果是遍历某个对象或数组,建议使用第二个函数中的for循环;
js中for循环遍历的写法的更多相关文章
- js中的循环
js中的循环是我们经常要用到的,现在进行一些归纳. 一.javascript种的循环. 1.循环对象 var o = { name: 'Jack', age: 20, city: 'Beijing' ...
- js中的数组遍历
js中的数组遍历是项目中经常用到的,在这里将几种方法做个对比. ! for循环:使用评率最高,也是最基本的一种遍历方式. let arr = ['a','b','c','d','e']; for (l ...
- java和js中for循环的区别
java中for循环,先执行语句后循环 for (int i=1;i<10;i++){ for(int b=1;b<=i;b++){ System.out.print(b+"*& ...
- js中的循环语句
js中的循环语句可分为三种:1.while:2.do……while:3.for. while的语法为 while (exp) { //statements;} var a=1,b=0; whil ...
- js中的三种函数写法
js中的三种函数写法 <script type="text/javascript"> //普通的声明方式 function myFun(m,n){ alert(m+n) ...
- js中for循环的研究
转自:http://blog.csdn.net/lushuaiyin/article/details/8541500 <html> <body> <b><ce ...
- HTML+JS中网页跳转的写法
1.html中使用meta中跳转,通过meta可以设置跳转时间和页面 <head> <!--只是刷新不跳转到其他页面 --> <meta http-equiv=" ...
- js中4种遍历语法比较
前言:本文主要比较for.for-in.forEach和for-of的异同以及优缺点. for for循环是最原始最易理解的循环遍历方式 for(var index = 0;index < ar ...
- JS中的循环嵌套 BOM函数
[嵌套循环特点] 外层循环转一次,内层循环转一圈 外层循环控制行数,内层循环控制每行元素个数 [做 ...
随机推荐
- 【Linux】使用cryptsetup加密磁盘 策略为LUKS
LUKS(Linux Unified Key Setup)为Linux硬盘分区加密提供了一种标准,它不仅能通用于不同的Linux发行版本,还支持多用户/口令.因为它的加密密钥独立于口令,所以如果口令失 ...
- bash shell关联数组总结
[原创]本博文为原创博文,引用或转发请注明原始出处和链接:https://www.cnblogs.com/dingbj/p/dict_array.html 什么是关联数组? 关联数组相对于索引数组,又 ...
- idea 启动热部署Devtolls
1.在子工程pom.xml中添加devtools jar包到需要启动的项目中 1 <dependency> 2 <groupId>org.springframework.boo ...
- Android事件分发机制三:事件分发工作流程
前言 很高兴遇见你~ 本文是事件分发系列的第三篇. 在前两篇文章中,Android事件分发机制一:事件是如何到达activity的? 分析了事件分发的真正起点:viewRootImpl,Activit ...
- 虚拟化kvm的搭建
虚拟化, 是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机 ,在一台计算机上同时运行多个逻辑计算机,每台逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不 ...
- 如何将python中pip源设置为国内源
1.Windows Python的学习过程中,往往会学习到很多库,而安装各类库的时候,往往不尽人意,下载速度从几KB到十几KB.甚至下载到一半还超时报错.这都是因为pip源是访问国外的官方源,如果需要 ...
- (03)-Python3之--元组(tuple)操作
1.定义 元组的关键字:tuple 元组以()括起来,数据之间用 , 隔开.元组当中的数据,可以是任意类型.数值是可以重复的. 元组元素是 不可变的,顺序是 有序的. 例如: b = ("萝 ...
- Connection Manager简称connman
ConnMan Connection Manager简称connman,connman是使用d-bus做为进程间通信机制来管理Linux网络链接的一种软件.在connman的d-bus接口中,有 ...
- node集群(cluster)
使用例子 为了让node应用能够在多核服务器中提高性能,node提供cluster API,用于创建多个工作进程,然后由这些工作进程并行处理请求. // master.js const cluster ...
- How to Gracefully Close Channels
小结: 1. When a goroutine sends a value to a channel, we can view the goroutine releases the ownership ...