zoukankan      html  css  js  c++  java
  • JS遍历对象和数组总结

     在日常工作过程中,我们对于javaScript遍历对象、数组的操作是十分的频繁的,今天把经常用到的方法总结一下!

    一、遍历对象

    1、使用Object.keys()遍历  

    返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含Symbol属性).
    复制代码
    var obj = {'0':'a','1':'b','2':'c'};
    
    Object.keys(obj).forEach(function(key){
    
         console.log(key,obj[key]);
    
    });
    复制代码

     

    2、使用for..in..遍历     

    循环遍历对象自身的和继承的可枚举属性(不含Symbol属性).
    复制代码
    var obj = {'0':'a','1':'b','2':'c'};
    
    for(var i in obj) {
    
         console.log(i,":",obj[i]);
    
    }
    
     
    复制代码

    3、使用Object.getOwnPropertyNames(obj)遍历
    
          返回一个数组,包含对象自身的所有属性(不含Symbol属性,但是包括不可枚举属性).
    复制代码
    var obj = {'0':'a','1':'b','2':'c'};
    Object.getOwnPropertyNames(obj).forEach(function(key){
    
        console.log(key,obj[key]);
    
    });
    复制代码

    4、使用Reflect.ownKeys(obj)遍历
    
          返回一个数组,包含对象自身的所有属性,不管属性名是Symbol或字符串,也不管是否可枚举.  
    复制代码
    var obj = {'0':'a','1':'b','2':'c'};
    Reflect.ownKeys(obj).forEach(function(key){
    
    console.log(key,obj[key]);
    
    });
    复制代码

    二、遍历数组

    1、使用forEach遍历
    复制代码
    var arr=[1,2,3,4];
    
    arr.forEach(function(val, index) {
    
    console.log(val, index);
    });
    
     
    复制代码

     

    2、使用for..in..遍历
    复制代码
    var arr=["张三","李四","王五","赵六"];
    
    for (var i in arr){
    
    console.log(i,":",arr[i]);
    
    }
    复制代码

    3、使用for-of遍历
    
         不仅支持数组,还支持大多数类数组对象,例如DOM NodeList对象.
    
         也支持字符串遍历,它将字符串视为一系列的Unicode字符来进行遍历.
    复制代码
    var arr=["张三","李四","王五","赵六"];
    
    for (var value of arr){
    
        console.log(value);
    
    }
    复制代码

     

     

  • 相关阅读:
    算法导论2.37答案
    算法导论2.37的算法
    heavy dark读《《暗时间》》
    深入SetOP2函数
    c++标准库都有哪些文件
    c++ sort函数的用法
    深入char转换为int/unsigned int的内部机制分析
    顺序容器之vector
    java的动态代理机制详解
    java.lang.IllegalStateException: Web app root system property already set to different value
  • 原文地址:https://www.cnblogs.com/Joe-and-Joan/p/11228476.html
Copyright © 2011-2022 走看看