数组的遍历

  • for循环
for(var j = 0,len = arr.length; j < len; j++){
console.log(arr[j]);
}
  • forEach,性能比for还弱

arr.forEach(function(value,i){
console.log('forEach遍历:'+i+'--'+value);
})
  • map遍历
arr.map(function(value,index){
console.log('map遍历:'+index+'--'+value);
});
  • for-of遍历 是ES6新增功能
for( let i of arr){
console.log(i);
}

forEachmap是ECMA5新增数组的方法,for-of是ES6新增方法,ie9以下的浏览器还不支持

对象遍历

  • for in
for(var key in obj){
console.log(key+": "+obj[key])
}
  • forEach
obj.forEach((value,index)=>{
console.log(value+","+index)
})

补充

  • for-of
    // for-of遍历数组,不带索引,i即为数组元素
for(let i of arrTmp){
console.log(i)
}
//输出 "value1" "value2" "value3" // for-of遍历Map对象
let iterable = new Map([["a", 1], ["b", 2], ["c", 3]]);
for (let [key, value] of iterable) {
console.log(value);
}
//输出 1 2 3 // for-of遍历字符串
let iterable = "china中国";
for (let value of iterable) {
console.log(value);
}
//输出 "c" "h" "i" "n" "a" "中" "国"
  • Object.keys()返回键名数组
    //数组类型
let arr = ["a", "b", "c"];
console.log(Object.keys(arr));
// (3) ['0', '1', '2'] // 类数组对象
let anObj = { 100: 'a', 2: 'b', 7: 'c' };
console.log(Object.keys(anObj));
// (3) ['2', '7', '100'] //一般对象
let xyz = {z: "zzz", x: "xxx", y: "yyy"};
console.log(Object.keys(xyz));
// (3) ["z", "x", "y"]

js数组遍历和对象遍历小结的更多相关文章

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

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

  2. JS——数组中push对象,覆盖问题,每次都创建一个新的对象

    今天写运动框架时,发现将对象push进数组,后面的值会覆盖前面的值,最后输出的都是最后一次的值.其实这一切都是引用数据类型惹的祸.       如果你也有类似问题,可以继续看下去哦.       下面 ...

  3. js数组合并以及对象的遍历

    这是很基础的知识,but,对于一只未系统学习过js,只略懂搬砖的跨界狗,还是经常犯错: 场景:移动端上拉加载更多. 初始数组合并后来请求的数组. 使用concat方法,不过要主要: 使用concat, ...

  4. 小姐姐手把手教你JS数组中的对象去重

    有时候数据库中的数据重复的,我们另一个需求需要数据的唯一性 那么这时候就用到这个方法了  我还是以截图的方式发粗来  不然太丑了 见谅 console.log(map)打印出来的结果已经帮我们把需要的 ...

  5. js数组转成对象

    $scope.addalerts = []; $scope.addalertsString = JSON.stringify($scope.addalerts); 全部教程http://each.si ...

  6. js数组中去重对象

    var allCourses = new Array();var coursesId = new Array();function findCourses() { Courses.data().eac ...

  7. js遍历json对象

    原生js遍历json对象 遍历json对象: 无规律: <script> var json = [ {dd:'SB',AA:'东东',re1:123}, {cccc:'dd',lk:'1q ...

  8. JS数组与对象的遍历方法大全

    本文简单解析各种数组和对象属性的遍历方法: 原生for循环.for-in及forEach ES6 for-of方法遍历类数组集合 Object.key()返回键名的集合 jQuery的$.each() ...

  9. JS数组&对象遍历

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

随机推荐

  1. 利用反射实现Servlet公共类的抽取

    一次请求的执行过程: 请求:发送请求地址-->到达web.xml中,找到地址对应的servlet类-->通过反射调用该类的构造函数,创建该servlet类的对象-->通过当前对象调用 ...

  2. 关于echarts3版本里的tree图形显示Bug、无法缩放和移动

    在使用echarts3版本的js绘制tree图表的时候,如果想动态更新tree的数据,可能会出现图表渲染有异常,并且api给出的roam配置无法控制图表通过鼠标缩放和移动,如下图: 不过更改echar ...

  3. 【Mysql】经常使用指令之——忘记password

    上一篇文章基本总结了下myql下通过指令怎么创建用户.详见:[Mysql]经常使用指令之--用户操作(创建,授权,改动.删除) 今天说下特殊情况,忘记password了怎么办??? 重装.删除配置等能 ...

  4. CentOs虚拟机能够互相ping通,但无法訪问虚拟机服务

    CentOs虚拟机能够互相ping通,但无法訪问虚拟机服务 虚拟机ip:192.168.0.57 主机 ip:192.168.0.80 在虚拟机上搭建了php环境.虚拟机CentOs,主机win7 虚 ...

  5. javescript定时器demo

    本来认为这个事情还是挺easy的不值得写上去,今天同事突然问我.我心想曾经写过,可是就是想不起函数的名称的,于是翻了一下原来的代码. function run() { interval = setIn ...

  6. JavaScript定时调用函数(SetInterval与setTimeout)

    setTimeout和setInterval的语法同样.它们都有两个參数.一个是将要运行的代码字符串.另一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将运行那段代码. 只是这两个函数还是有差别的 ...

  7. 浏览器加载跟渲染html的顺序-css渲染效率的探究

    1.浏览器加载和渲染html的顺序1.IE下载的顺序是从上到下,渲染的顺序也是从上到下,下载和渲染是同时进行的.2.在渲染到页面的某一部分时,其上面的所有部分都已经下载完成(并不是说所有相关联的元素都 ...

  8. matplotlib散点图笔记

    定义: 由一组不连续的点完成的图形 散点图: 包含正相关性,负相关性和不相关性. 散点图生成函数: plt.scatter(x,y) 演示代码如下: import numpy as np import ...

  9. Python Web框架要点

    1. Web应用程序处理流程 前端客户端(浏览器.APP.ajax.爬虫程序)>>>--http的请求与响应--<<<服务器程序(Gunicorn.uwsig)&l ...

  10. 【hdu 4696】Professor Tian

    [Link]:http://acm.hdu.edu.cn/showproblem.php?pid=4649 [Description] 给你一个由位运算"与""或&quo ...