JavaScript中的迭代方法有哪些-LMLPHP

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

定义

1、迭代(iterate),指的是按照某种顺序逐个访问列表中的每一项。比如,for语句。
2、循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,while语句。
3、遍历(traversal),指的是按照一定的规则访问树形结构中的每个节点,而且每个节点都只访问一次。
4、递归(recursion),指的是一个函数不断调用自身的行为。比如,以编程方式输出著名的斐波纳契数列。

JavaScript中的迭代方法

1、every()

用来查询数组中的 每一个是否 满足某一条件

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.every(function(item,index){
      return (item > 5);   // 判断传入的值是否全部都大于5
})
console.log(number);   // false 只要有一个不满足就为 false
登录后复制

2、some()

查询数组中每项满足 某些条件

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.every(function(item,index){
      return (item > 5);   // 判断传入的值哪些项大于5
})
console.log(number);   // false 只要有一个满足就为true
登录后复制

3、filter()

筛选符合条件的项,组成新数组

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.filter(function(item,index){
      return (item > 5);   // 判断传入的值哪些项大于5
})
console.log(number);   // [6, 7, 8, 9]
登录后复制

4、map()

通过计算原数组中的项,来组成新的数组

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.map(function(item,index){
      return item - 1;   // 判断传入的值哪些项大于5
})
console.log(number);   // [0, 1, 2, 3, 4, 5, 6, 7, 8]
登录后复制

5、forEach()

传入数组的每一项

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.forEach(function(item,index){
      console.log(item);   // [1, 2, 3, 4, 5, 6, 7, 8, 9]
})
登录后复制

6、reduce()

数组的前项和后项进行累计值计算

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.reduce(function(prev,cur,index){
      return prev + cur;
})
console.log(number);   // 1+2+3...+9 = 45 本质上就是数组中的项 累计运算的过程
登录后复制

注意

forEach 这个迭代方法在本质上和 for 循环没有什么区别,但是在使用该方法的时候会传入三个参数,在输出时候传入第一项,也就是输出数组中的每一项,如果传入第二项,那么会循环迭代数组的 index 的下标值,如果传入的是第三项,那么是循环迭代整个 num 数组。

【推荐学习:javascript高级教程

以上就是JavaScript中的迭代方法有哪些的详细内容,更多请关注Work网其它相关文章!

09-08 23:56