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);
                
            }
原文地址:https://www.cnblogs.com/duck-ifox/p/7499297.html