javascript——迭代方法

<script type="text/javascript">
        //五个迭代方法 都接受两个参数:要在每一项上运行的函数 和 运行该函数的作用域(可选)
        //every():对数组中的每一项运行给定函数。如果函数对每一项都返回true,则返回true。
        //filter():对数组中的每一项运行给定函数。返回该函数会返回true的项组成的数组。
        //forEach():对数组中每一项运行给定函数。该函数没有返回值。
        //map():对数组中每一项运行给定函数。返回每次函数调用的结果组成的函数。
        //some():对数组中每一项运行给定函数。如果函数对 任一项返回true,则返回true。

        var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
        //every()和some()最相似
        //every()  item:当前遍历项,index:当前项索引,array:数组对象本身
        var everyResult = numbers.every(function (item, index, array) {
            return item > 2;
        });
        alert(everyResult);//false

        //some()
        var someResult = numbers.some(function (item, index, array) {
            return item > 2;
        });
        alert(someResult);//true

        //filter
        var filterResult = numbers.filter(function (item, index, array) {
            return item > 2;
        });
        alert(filterResult);//[3,4,5,4,3]

        //map()
        var mapResult = numbers.map(function (item, index, array) {
            return (item * 2);
        });
        alert(mapResult);//[2,4,6,8,10,8,6,4,2]

        //forEach 本质上和for循环没有区别
        var forEachResult=numbers.forEach(function(item,index,array){
            alert(item)
        });
    </script>
时间: 2024-10-23 02:03:04

javascript——迭代方法的相关文章

一张图看懂JavaScript中数组的迭代方法:forEach、map、filter、reduce、every、some

好吧,竟然不能单发一张图,不够200字啊不够200字! 在<JavaScript高级程序设计>中,分门别类介绍了非常多数组方法,其中迭代方法里面有6种,这6种方法在实际项目有着非常广泛的作用.其中本人最爱用forEach和map,好用又高效,不用什么都是for循环大法.但是初学的时候往往觉得头大,这些方法都很像,到底有什么区别?趁着今天有空,我把对着6个方法的认知,用最浅显的图画出来,希望看到的同学觉得有用.

javascript Array 数组的迭代方法

javascript迭代的方法 //filter() 利用指定的函数确定是否返回数组中包涵的某一项 var num = [1,2,3,4,5,6,12]; num.filter(function(item, index, array){ return (item > 2); //[3, 4, 5, 6, 12] }); //map() 返回一个数组,数组中每一项都是在原始数组中的对应项上运行传入参数的结果 var num = [1,2,3,4,5,4,3,2,1]; num.map(functi

Javascript数组的5种迭代方法

#Javascript数组的5种迭代方法 数组当中定义了5个迭代方法,传入这些方法中的函数会接受三个参数,数组项的值,该项在数组的位置,和数组对象本身,以下是5个迭代方法的作用. 1.every方法: 对数组中的每一项运行给定函数,如果该函数对每一项都返回true,则返回true. let arr1 = [1,2,3,4,5,6]; let arr2 = [-1,-2,-3,-4,-5,-6]; let every1 = arr1.every((item,index,arr)=>{ return

JavaScript高级程序设计--对象,数组(栈方法,队列方法,重排序方法,迭代方法)

1.使用对象字面量定义对象 var person={}; 使用这种方式创建对象时,实际上不会调用Object构造函数. 开发人员更喜欢对象字面量的语法. 2.有时候需要传递大量可选参数的情形时,一般来讲使用对象字面量来封装多个可选参数. 3.对象属性的点表示法与方括号表示法的区别 (1)功能上:两者没区别 (2)但是方括号的有点是可以通过变量来访问属性 例如: var person={ name:"Nic" } 点表示法:person.name 方括号表示法:var prop=“nam

[Effective JavaScript 笔记]第50条:迭代方法优于循环

"懒"程序员才是好程序员.复制和粘贴样板代码,一但代码有错误,或代码功能修改,那么程序在修改的时候,程序员需要找到所有相同功能的代码一处处进行修改.这会使人重复发明轮子,而且在别人看代码的时候无法在更高层次都看待问题的解决方案.太容易陷入细节. for循环 js中的for循环在进行一些细微变化时,可以引入不同的行为.编程的时候对于边界条件的判断往往会导致一些简单的错误.下面的一些for循环的细微变化导致边界条件的变化. for(var i=0;i<=n;i++){...} //包

JavaScript中数组的5种迭代方法

浏览器兼容情况:IE9+ ES5为数组定义了5个迭代方法.每种方法都接收两个参数.要在每一项上运行的函数和(可选的)运行该函数的作用域对象--影响this的值.//其中(可选的)这个参数暂时未遇到过. 其中,函数都接收三个参数(数组中的每一项.每一项的索引值.数组对象本身). 下面是5中方法的介绍: every() : 对数组中的每一项执行函数,如果每一项都返回 true ,则该方法返回 true. some():     对数组中的每一项执行函数,只要有一项返回了 true ,则该方法返回 t

JavaScript之数组五大迭代方法总结

ES5定义了五个迭代方法,每个方法都接收两个参数:要在每一项上运行的函数和运行该函数的作用域对象(可选的),作用域对象将影响this的值.传入这些方法中的函数会接收三个参数:数组的项的值.该项在数组中的位置和数组对象本身. every() 和 some() every()是对数组中的每一项运行给定函数,如果该函数对每一项都返回true,则返回true. some()是对数组中的每一项运行给定函数,如果该函数对任一项返回true,则返回true. every()和some()很相似,他们都用于查询

JavaScript 数组方法总结

最近公司没项目.所以所幸学学JS.毕竟很多人和我一样.属于培训机构出来的.JS基础也很差. 面试的时候面试官问你 .你会JS不.你会毫不犹豫的回答会.因为你确实用过.但是真正会的或许只是以前项目中需要的方法. 鉴于这种情况 我决定把JS基础篇的东西像JAVA或.net一样在博客园阐述一到. 虽然第一次发技术贴.但是我还是看了很多帖子.我不会很不负责的复制代码 然后走人了事.以下为总结部分: <script type="text/javascript"> function 数

JS中数组的迭代方法和归并方法

昨天总结的JavaScript中的数组Array方法 数组的迭代方法 ES5中为数组定义了5个迭代方法.每个方法都要接收两个参数:要在每一项上面运行的函数和(可选的)运行该函数的作用域对象---影响this的值. 传入方法中的函数会介绍三个参数:1.数组项的值 2. 该项在数组的中位值 3. 数组对象本身: every()和some()方法  every():对数组中的每一项运行给定函数,如果每一项都返回true,则返回true,否则false:  some():对数组中的每一项运行给定函数,如