1.for 循环

普通遍历方法,可优化,存下数组的length,避免每次都去获取数组的length,性能提升

for(var i=0;i<arr.length;i++){
console.log(arr[i]);
}

2.for-in

不仅可遍历数组还可以遍历对象

for(key in obj)

该方法可以读取对象本身的成员属性,又可以遍历出对象的原型属性

3.forEach

无返值,可用return退出循环,不能用break退出循环

  var str = "";
arr.forEach(function (ele,index,array) {
str+=ele;
});
alert(str);

4.map

有返回值,遍历后返回一新的数组,不改变原数组,返回什么都添加到数组中,相当于把数组的每一项变成return 的值

  var arr2 = arr.map(function (ele,index,array) {
return ele+"你好";
}) console.log(arr2);

5.filter

有返回值,return为true的数组,不改变原数组,筛选,不改变数组每一项的值,筛选出满足条件的新数组

  var arr1 = arr.filter(function (ele,index,array) {
if(ele.length>2){
return true;
}
return false;
}); console.log(arr1);

6.every

返回值为true或false,当数组的每一项都满足条件返回true,否则返回false,而参数是回调函数

  var bool = arr.every(function (element,index,array) {
element = "aaa";
array[index] = "aaa";
if(element.length>2){
return false;
}
return true;
}); alert(bool);

7.find

对数组的每一个元素执行提供的函数,若有一个符合函数要求,则返回此数组的元素,结束循环,否则返回undefined

8.reduce

累加。空数组无返回值

js数组的遍历(API)的更多相关文章

  1. JS数组&对象遍历

    遍历的总结,经常用到的,希望帮助你我成长. JS数组遍历: 1,普通for循环 var arr = [1,2,3,4,9]; for ( var i = 0; i <arr.length; i+ ...

  2. js数组string对象api常用方法

    charAt() 方法可返回指定位置的字符. stringObject.charAt(index) indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. stringObject ...

  3. js 数组元素遍历

    <html> <body> <script type="text/javascript"> var x var mycars = new Arr ...

  4. JavaScript数组循环遍历之forEach

    1.  js 数组循环遍历. 数组循环变量,最先想到的就是 for(var i=0;i<count;i++)这样的方式了. 除此之外,也可以使用较简便的forEach 方式 2.  forEac ...

  5. 转→js数组遍历 千万不要使用for...in...

    看到一篇内容还不错,但是排版实在糟糕, 逼死强迫症患者啊,直接拉下去找原文连接,找到了,但是已经消失了···500错误... 第一次因为实在看不下去一篇博客的排版, 为了排版而转载... 转载地址:h ...

  6. 手写js代码(一)javascript数组循环遍历之forEach

    注:原文地址http://blog.csdn.net/oscar999/article/details/8671546 我这里是仿照学习! 1.js的数组循环遍历 ①数组的遍历首先想到的是for()循 ...

  7. js数组遍历和对象遍历

    针对js各种遍历作一个总结分析,从类型用处:分数组遍历和对象遍历:还有性能,优缺点等. JS数组遍历: 1,普通for循环,经常用的数组遍历 var arr = [1,2,0,3,9]; for ( ...

  8. js 数组api

    Javascript Array API   JS数组对象提供了很多API方法,要用到的朋友可以查阅哈,如有错误欢迎指正. /** * Created by Administrator on 2017 ...

  9. JS 数组和对象的遍历方式,以及几种方式的比较。

    通常我们会用循环的方式来遍历数组.但是循环是 导致js 性能问题的原因之一.一般我们会采用下几种方式来进行数组的遍历: 方式1: for in 循环: var arr = [1,2,3,4,5]; v ...

随机推荐

  1. .NET的资源并不限于.resx文件

    为了构建一个轻量级的资源管理框架以满足简单的本地化(Localization)的需求,我试图直接对现有的Resource编程模型进行扩展.虽然最终没能满足我们的需求,但是这两天也算对.NET如何进行资 ...

  2. Linux下Tomcat优化

    /etc/profileexport JAVA_OPTS="-server -showversion -Xms2048m -Xmx2048m -XX:PermSize=256m -XX:Ma ...

  3. identityserver4源码解析_2_元数据接口

    目录 identityserver4源码解析_1_项目结构 identityserver4源码解析_2_元数据接口 identityserver4源码解析_3_认证接口 identityserver4 ...

  4. vue项目创建与使用

    目录 复习 Vue项目环境搭建 Vue项目创建 pycharm配置并启动vue项目 vue项目目录结构分析 vue组件(.vue文件) 全局脚本文件main.js(项目入口) 改写 vue项目启动生命 ...

  5. 痞子衡嵌入式:记录i.MXRT1060驱动LCD屏显示横向渐变色有亮点问题解决全过程(提问篇)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1060上LCD横向渐变色显示出亮点问题的分析解决经验. 痞子衡前段时间在支持一个i.MXRT1060客户项目时遇到了LCD ...

  6. Github桌面版使用方式(MAC)

    Github是一个流行的代码管理网站,同时也是全球最大的同性交友网站(滑稽).Github网页上你可以自由地托管自己的项目,也可以fork别人的项目过来玩耍,非常之方便,今天笔者就来介绍一下githu ...

  7. Tensorflow实现MNIST手写数字识别

    之前我们讲了神经网络的起源.单层神经网络.多层神经网络的搭建过程.搭建时要注意到的具体问题.以及解决这些问题的具体方法.本文将通过一个经典的案例:MNIST手写数字识别,以代码的形式来为大家梳理一遍神 ...

  8. 1+1>2:MIT&IBM提出结合符号主义和连接主义的高效、准确新模型

    自人工智能的概念提出以来,关于符号主义和连接主义的争论就不绝于耳.究竟哪一种方式可以实现更好的人工智能?这一问题目前还没有定论.深度学习的快速发展让我们看到连接主义在构建 AI 系统中的优势,但其劣势 ...

  9. Homebrew中国镜像安装与配置

    1.删除旧Homebrew ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/u ...

  10. 常见Web安全漏洞--------sql注入

    SQL注入:利用现有应用程序,将(恶意)的SQL命令注入到后台数据库执行一些恶意的操作.在mybatis 中比较容易出现:${} 会发生sql 注入问题 #{}: 解析为一个 JDBC 预编译语句(p ...