zoukankan      html  css  js  c++  java
  • JavaScript 中Array数组的几个内置函数

    本文章内容均参考《JavaScript高级程序设计第三版》

    今天在看JavaScript书籍的时候,看到之前没有了解过的JavaScript中Array的几个内置函数对象,为了之后再开发工作中能方便查询,故编写此随笔。直接贴代码,

    function arrayEffect(){
                    var numbers = [1,2,3,4,5,6,7,8,9,10];
                    
                    //------------------------------------  支持浏览器版本 IE9+,Firfox 2+ ,Safair 3+,Opera 9.5+,Chrome ------------------------------------
                    
                    
                    /** every迭代方法,对数组中的每一项运行给定函数,只有该函数对没一项的返回值都为true,则返回true **/
                    var ever = numbers.every(function (item,index,array){
                        return item - 1 == index;
                    });
                    
                    /** filter方法,股民思议,类似于过滤器,返回true项组成的一个数组 **/
                    var filter = numbers.filter(function(ele,index,array){
                        return ele % 3 == 0;
                    });
                    
                    /** 对数组中的每一项给定函数,返回每次函数调用的结果组成的数组 */
                    var map = numbers.map(function(ele ,index,array){
                        return ele * ele;
                    });
                    
                    /** 对数组中的每一项给定函数,如果该函数的任意一项返回true,则返回true,否则返回false */
                    var some = numbers.some(function(ele,index,array){
                        return ele % 2 == 0;
                    });
                    //-------------------------------------------------------------------------------------------------------------------------------------
                    
                    
                    /** 接收两个参数,在每一项上调用的函数和作为规避基础的初始值(第一个项为可选项)
                     * 调用函数有四个参数,前一个值,当前值,当前元素数组位置,和数组对象
                     * tips : 执行函数中的每一个向的返回值,都会当做下一项执行函数的第一个参数
                     * 如第一次执行回调,prev为1,cur为2。第二次prev为3(1 + 2的结果),cur是3(第三项)。直到最后一个数组元素
                     * 支持浏览器版本 IE9+ , Firfox 3+ , Safair 4+,Opera 10.5,Chrome 
                     */
                    var reduce = numbers.reduce(function(prev,cur,index,array){
                        
                        return prev + cur;
                    },34);
                    
                    /** 接收两个参数,在每一项上调用的函数和作为规避基础的初始值(第一个项为可选项)
                     * 调用函数有四个参数,前一个值,当前值,当前元素数组位置,和数组对象(与reduce互为反向操作,即总最后一项开始往前面便利元素,除此之外没有任何不同)
                     * 支持浏览器版本 IE9+ , Firfox 3+ , Safair 4+,Opera 10.5,Chrome 
                     */
                    var reduceRight = numbers.reduceRight(function (prev,cur,index,array){
                        
                        return prev + cur;
                    });
                    
                    
                    alert("The every method of array : " + ever);
                    alert("The filter method of array : " + filter);
                    alert("The map method of array : " + map);
                    alert("The some method of array : " + some);
                    alert("The reduce method of array :" + reduce);
                    alert("The reduceRight method of array :" + reduceRight);
                    
                }
  • 相关阅读:
    Git分支合并:Merge、Rebase的选择
    linux系统下MySQL表名区分大小写问题
    Spring Mvc和Spring Boot读取Profile方式
    Git删除远程分支
    TortoiseGit push免输密码
    git [command line] fatal: Authentication failed for
    Jenkins [Error] at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:192)
    FAIL
    WIN下修改host文件并立即生效
    MYSQL 创建数据库SQL
  • 原文地址:https://www.cnblogs.com/duck-ifox/p/7499297.html
Copyright © 2011-2022 走看看