zoukankan      html  css  js  c++  java
  • 遍历数组

    forEach

    1)跳过数组空缺元素

    2)无返回值

    var colors = ["red", "blue", "grey"];
    colors.forEach(function(item, index) {
        console.log(index + "-" + item)  //0-red  1-blue  2-grey
    });

    for...in  

    1)处理下标为字符串的数组

    var arr1 = new Array();
    arr1['a'] = "xhaja";
    arr1['b'] = "asda"
    for(var key in arr1) {
      console.log(key)         //a , b
      console.log(arr1[key])   // xhaja , asda
    }

    while / do while

    for

    for(var i=0 ; i< arr.length ; i++) { } 

    map

    1)可用于每个数组元素的运算 

    2)不改变原数组,返回与原数组长度一样的新数组

    var arr = [1,2,3];
    var result = arr.map(function(val){
       return val*2;
    })
    console.log(result);  // [2,4,6]

    filter

    1)可用于数组元素条件判断

    2)不改变原数组,返回符合条件元素的新数组

    var arr = [1,2,3];
    var result = arr.map(function(val){
       return val>1;
    })
    console.log(result);  // [2,3]

    every /  some 

    1)可用于数组元素条件判断

    2)但只返回 boolean 值

    every :只返回 boolean 值 —— 当每个数组元素 “全部 ” 符合条件,才返回 true

    some :当 “只要有一个” 数组元素符合条件,就返回 true

    find / findIndex

    1)可用于数组元素条件判断

    2)返回一个 第一个符合条件 的数组元素值,没有返回undefined;f

       indIndex 返回的是数组下标

    var s = [1,2,3,5];
    var result = s.find(function(val){
        return val>=2
    })
    console.log(result)  //2

    reduce

    1)可用于将数组元素进行递进组合,返回一个值

    2)第1次调用:第一个参数是初始值,第二个参数是第一个数组元素

       第2次调用:第一个参数是上一次调用的返回值,第二个参数是下一个数组元素

    arr[1,2,3];
    var result = arr.reduce(function(a,b){
        return a+b;
    })
    console.log(result)  // 6
    设置初始值:
    arr[1,2,3];
    var result = arr.reduce(function(a,b){
        return a+b;
    },60)
    console.log(result)  // 66
  • 相关阅读:
    python 希尔排序
    python 选择排序
    python 插入排序
    怎么根据返回数量,来渲染点赞星星的个数变高量?
    avalon $computed不起作用?
    移动端点击事件兼容问题,在pc端可以点,在手机上不可以点
    移动端弹出遮罩层禁止页面滚动,遮罩里面的框允许滚动如何实现。
    移动端,如何禁止弹窗下面内容滚动/页面滚动
    avalon数据已更新,视图未更新的bug修复
    Python 导入分部分项前的 数据处理
  • 原文地址:https://www.cnblogs.com/yuyedaocao/p/12047603.html
Copyright © 2011-2022 走看看