js数组的遍历(API)
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)的更多相关文章
- JS数组&对象遍历
遍历的总结,经常用到的,希望帮助你我成长. JS数组遍历: 1,普通for循环 var arr = [1,2,3,4,9]; for ( var i = 0; i <arr.length; i+ ...
- js数组string对象api常用方法
charAt() 方法可返回指定位置的字符. stringObject.charAt(index) indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. stringObject ...
- js 数组元素遍历
<html> <body> <script type="text/javascript"> var x var mycars = new Arr ...
- JavaScript数组循环遍历之forEach
1. js 数组循环遍历. 数组循环变量,最先想到的就是 for(var i=0;i<count;i++)这样的方式了. 除此之外,也可以使用较简便的forEach 方式 2. forEac ...
- 转→js数组遍历 千万不要使用for...in...
看到一篇内容还不错,但是排版实在糟糕, 逼死强迫症患者啊,直接拉下去找原文连接,找到了,但是已经消失了···500错误... 第一次因为实在看不下去一篇博客的排版, 为了排版而转载... 转载地址:h ...
- 手写js代码(一)javascript数组循环遍历之forEach
注:原文地址http://blog.csdn.net/oscar999/article/details/8671546 我这里是仿照学习! 1.js的数组循环遍历 ①数组的遍历首先想到的是for()循 ...
- js数组遍历和对象遍历
针对js各种遍历作一个总结分析,从类型用处:分数组遍历和对象遍历:还有性能,优缺点等. JS数组遍历: 1,普通for循环,经常用的数组遍历 var arr = [1,2,0,3,9]; for ( ...
- js 数组api
Javascript Array API JS数组对象提供了很多API方法,要用到的朋友可以查阅哈,如有错误欢迎指正. /** * Created by Administrator on 2017 ...
- JS 数组和对象的遍历方式,以及几种方式的比较。
通常我们会用循环的方式来遍历数组.但是循环是 导致js 性能问题的原因之一.一般我们会采用下几种方式来进行数组的遍历: 方式1: for in 循环: var arr = [1,2,3,4,5]; v ...
随机推荐
- Jmeter Agent自动化
1.打开菜单栏-附件-系统工具-任务计划程序,新建PerformanceTest目录. 2.在PerformanceTest目录下新建一个基本任务. 3.完成. 这样,当我们在使用Jmeter进行分布 ...
- [C++]HelloWorld背后的故事!
人物介绍 姓名 HelloWorld 性别 .cpp 住址 D:\ 身份证号(SHA1) 25106D2879A9EA300BB264F8155A71D7C44DA2E8 故事简介 编写源文件 预编译 ...
- ASP.NET Core 3.x 中间件流程与路由体系
中间件分类 ASP.NET Core 中间件的配置方法可以分为以上三种,对应的Helper方法分别是:Run(), Use(), Map(). Run(),使用Run调用中间件的时候,会直接返回一个响 ...
- 使用SQL修改字段类型
修改字段类型步骤: 1.首先需要检查字段约束 2.删除字段约束 3.修改字段类型 4.加上字段约束 --不加这个条件,库中所有默认约束都可以看到 SELECT a.name AS DFName , ...
- hdu1242 又又又是逃离迷宫(bfs模板题)
题目链接:http://icpc.njust.edu.cn/Problem/Hdu/1242/ 这次的迷宫是有守卫的,杀死一个守卫需要花费1个单位的时间,所以以走的步数为深度,在每一层进行搜索,由于走 ...
- 【面试QA】Attention
目录 Attention机制的原理 Attention机制的类别 双向注意力 Self-Attention 与 Soft-Attention 的区别 Transformer Multi-Head At ...
- [CVPR 2019]NOCS代码训练、检测与评估
Normalized Object Coordinate Space for Category-Level 6D Object Pose and Size Estimation 训练.检测与评估 本文 ...
- CSS3过渡结束监听事件,清除/修改表单元素的一些默认样式
document.querySelector('div').addEventListener('transitionEnd',function(){ console.log('过度结束') }) 如果 ...
- 个人项目:WordCount (Java)
一.Github项目地址 https://github.com/misterchaos/WordCount 二.解题思路 2.1 基本需求分析 经过仔细阅读题目,分析得出项目的基本需求如下: wc.e ...
- 经验总结:超详细的 Linux C/C++ 学习路线!大厂面试指南
❝ 文章每周持续更新,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) ❞ 最近在知乎经常被邀请回答类似如何学习C++和C++后台开 ...