美文网首页
Array方法属性

Array方法属性

作者: _孙大善 | 来源:发表于2017-04-26 18:09 被阅读0次
    学会了请吃窝窝头---孙大善
    ECMAScript 5 Array新增方法
    方法 描述
    indexOf 返回某个指定的字符串值在字符串中首次出现的位置,如果不存在则返回-1
    lastIndexOf 返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索,如果不存在则返回-1
    every 测试数组的所有元素是否都通过了指定函数的测试
    some 测试数组的某些元素是否都通过了指定函数的测试
    forEach 令数组的每一项都执行指定的函数
    map 返回一个由原数组中每个元素调用某个指定方法得到的返回值所组成的新数组
    filter 利用所有通过指定函数处理的元素创建一个新的数组并返回
    reduce 接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终缩减为一个值
    reduceRight 接收一个函数作为累加器,数组中的每个值(从右到左)开始缩减,最终缩减为一个值
    let colors = ['red', 'blue', 'green', 'green'];
    
    console.log(colors.indexOf('green'));  //2
    console.log(colors.lastIndexOf('green'));  //3
    
    console.log(colors.every((color) => color.length >= 3)); //true,判断是否所有元素长度均大于等于3
    注:
    如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
    如果所有元素都满足条件,则返回 true。
    every() 不会对空数组进行检测。
    every() 不会改变原始数组。
    
    console.log(colors.some((color) => color.length > 4)); //true,判断是否有至少一个元素长度大于4
    
    colors.forEach((color) => {
        if(color === 'green'){
            console.log(color)
        }
    });  //green green
    
    console.log(colors.map((color) => {
        if(color === 'green'){
            return color;
        }
    })); //[undefined, undefined, "green", "green"]
    
    console.log(colors.filter((color) => {
        if(color === 'green'){
            return color;
        }
    })); //["green", "green"]
    
    console.log(colors.reduce((color, nextColor) => color + ',' + nextColor));  //red,blue,green,green
    
    console.log(colors.reduceRight((color, nextColor) => color + ',' + nextColor)); //green,green,blue,red
    

    明天再抽时间补充ES6 Array新增方法~~~

    相关文章

      网友评论

          本文标题:Array方法属性

          本文链接:https://www.haomeiwen.com/subject/lynizttx.html