• JS数组迭代


    //数组迭代方法是对每个数组进行操作

    //value   当前项目值     index   索引数     array   数组本身

    //为每个数组元素调用一次函数

    //Array.forEach()//没有返回值,只是针对每个数组项调用指定的函数

    var a = "";

    var num = [1,2,3,4,5];

    num.forEach(my);

    function my (value,index){

           a + = value + "<br/>";     //调用项目值

           a + = index + "<br/>";     //调用索引数

    }

    document.write(a);

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //map方法的作用就是将原数组按照一定的规则生成一个新的数组,不影响⚪数组。

    var num = [1,2,3,4,5];

    var num_ = num.map(my);

    function my(value){

          return value * 2;     //这里可以使用加减乘除

    }

    document.write(num_);

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //filter为"过滤"、"筛选"的意思。指数组filter后,返回过滤后的新数组。用法和参数跟map差不多。

    Array.filter()

    var num = [1,2,3,4,5];

    var a = num.filter(my);

    function my(value,index){

          return value > 3;

    }

    document.write(a);

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最后计算为一个值

    Array.reduce()

    total 总数

    var num = [1,2,3]

    var a = num.map(my)

    function my(total,value){

          console.log(total1);

          console.log(value);

       return total+value

    }

    console.log(a);

    //Array.reduceRight()   使用方法和Array.reduce一样,不同之处在于它是从最后一个值开始计算的。

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //检查数组中的每一项是否符合条件 

    Array.every()

    var num = [1,2,3,4,5];

    var all = num.every(my);

    function my(value) {

          return value > 3;

          return value > 0;

    }

    document.write("所有大于3的是:" + all);     //全部满足才为true 否则为false

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //返回一个布尔值(true或false),检查数组中是否有某些项符合条件

    Array.some()

    var num = [1,2,3,4,5];

    var all = num.some(my);

    function my(value,index) {

          return value > 3;                //ture

          return value > 6;                //false

    }

    document.write("所有大于3的是:" + all);     //只要满足一个即为true

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //在数组中搜索元素值并返回其位置

    Array.indexOf()

    var fruits = ["a","A","p","x","A","s","r"];

    var a = fruits.indexOf("A");

    document.write(fruits)

    document.write("A   被找到的位置是:" + a);     //搜索到第一个 就停止搜索 显示为索引数位置为1

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //与Array.indexOf()相似,但是从数组从结尾开始搜索

    Array.lastIndexOf()

    var   fruits = ["a","A","p","x","A","s","r"];

    var a = fruits.lastIndexOf("A");

    document.write("A   被找到的位置是: " + a);     //搜索到第一个 就停止搜索 显示索引位置为3

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //find方法用于找出第一个符合条件的数组成员。他的参数跟forEach方法是一样的;所有数组成员依次执行回调函数,直到找出第一个返回值为true的成员,然后返回该成员。如果没有符合的成员,则返回undefined。

    Array.find()

    var num = [1,2,3,4,5];

    var first = num.find(my);

    function my(value){

          return value > 3;

          return value > 6;

    }

    document.write("大于3的第一个值是:" + first);

    ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    //findIndex方法和find相似;不过它返回数组中符合条件的元素的索引。如果所有成员都不符合条件,则返回-1.

    Array.findIndex()

    var num = [1,2,3,4,5];

    var first = (num.findIndex(my));

    function my(value,index,array){

          return value > 3;

          return value > -5;

          return value > 6;

    }

    document.write("大于3的第一个值的下标数是:" + first);

  • 相关阅读:
    Beta 冲刺(5/7)
    Beta 冲刺(4/7)
    Beta 冲刺(3/7)
    Beta 冲刺(2/7)
    Beta 冲刺(1/7)
    福大软工 · 第十次作业
    PTA-B 1039 到底买不买 解题思路记录
    SDN负载均衡
    团队作业——项目验收与总结博客
    个人作业——软件工程实践总结作业
  • 原文地址:https://www.cnblogs.com/wzy123/p/11385469.html
Copyright © 2020-2023  润新知