关于JS 循环迭代是什么?

慕小猿
浏览 2349回答 3
3回答

清风流光

(function(){ //for循环的第二个为判断语句,i=0时转化布尔值为false,i-- 是先判断后自减再循环 一个简单的测试 i=1;a=i--;alert(a);alert(i); var a=[1,2,3,4,5], b=[], i=a.length; for(;i--;){ b.push(a[i]); } document.write(b+ "<br>"); })(); //匿名函数之前和之后的逗号不能省略,否则会报错 (function(){ //a[5]等于undefined转化为布尔值为false var a=[1,2,3,4,5], b=[], i=0; for(;a[i];i++){ b.push(a[i]); } document.write(b+ "<br>"); })(); (function(){ var a=[1,2,3,4,5], b=[]; a.forEach(function(value,index,array){ //和for循环类似 b.push(value);// 值     序列      数组 }) document.write(b+"<br>"); })(); (function(){ var a=[1,2,3,4,5],b; b=a.map(function(value,index,array){ //计算结果 返回新数组 return ++value; }); document.write(b+"<br>"); })(); (function(){ var a=[1,2,3,4,5],b; b=a.filter(function(value,index,array){ // 过滤 满足条件的值返回新数组 return value>1;    }); document.write(b+"<br>"); })(); (function(){ var a=[1,2,3,4,5],b; b=a.reduce(function(pre,next){ //可用于前后项计算就和返回新数组 return pre+next; }); document.write(b+"<br>"); })(); (function(){ var a=[1,2,3,4,5],b; //判断是否全满足  返回布尔值 b=a.every(function(value,index,array){ return value>1; }) document.write(b+"<br>"); })(); (function(){ var a=[1,2,3,4,5],b; b=a.some(function(value,index,array){ //判断是否能满足 有一项即可  返回布尔值 return value>1; }) document.write(b+"<br>"); })(); (function(){ // a 这是由下面5个小对象组成的一个新对象 var a={q:1,w:2,e:3,r:4,t:5},// {q:1,w:2,e:3,r:4,t:5}   :之前的叫做键  :后面叫做值  大括号表示它们在一个层 b=[], //         a 尝试用树状图连起来去理解   a={q:[{v:1},2,3],w:[4,5,6],e:[7,8,9]}          i; // {   q    w   e    } q是a的属性也是对象  js里一切皆对象 for(i in a){ // [{v:1},2,3],[4,5,6],[7,8,9] 将值看作数组,调用方式是a.q[0].v调用是结果 1 b.unshift(a[i]); // 上面的{v:1}可以旋转过来 1和2,3其实不在一个层里 } // 回归本题  for in 循环遍历对象  遍历的结果为 键 通过 键 调出值 document.write(b+ "<br>"); // unshift 代表  向数组的开头添加元素  })();

saber大爱_0

循环算是最基础的概念, 凡是重复执行一段代码, 都可以称之为循环. 大部分的递归, 遍历, 迭代, 都是循环.递归的定义是, 根据一种(几种)基本情况定义的算法, 其他复杂情况都可以被逐步还原为基本情况.在编程中的特征就是, 在函数定义内重复调用该函数.例如斐波那契数列, 定义F(0)=1, F(1)=1, 所有其他情况: F(x)=F(x-1)+F(x-2). 所有大于1的整数经过有限次的反推之后都可以转换到两种基本情况. 而在编程中, 算法则是这样的:int F(x){    if(x==0 || x==1)        return 1;    //这里是退出递归的条件, 以保证在有限次递归后能够得到结果    return F(x-1)+F(x-2);    //转化为更为基本的情况, 重复调用自身进行计算}迭代在数学和编程中有不同的含义. 迭代(数学): 在循环的基础上, 每一次循环, 都比上一次更为接近结果.例如下面是一个迭代的例子.int result = 0;for(int i=0; i<10; i++)    result += i;    //每一次循环之后, result都更加接近结果45有很多数学问题, 都是迭代算法, 如牛顿迭代法(求平方根).迭代(编程): 按顺序访问一个列表中的每一项, 在很多编程语言中表现为foreach语句
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript