zoukankan      html  css  js  c++  java
  • Object.keys( )与 for in 区别

    for in 一般用于对象的遍历:

    let obj = {
        a:1,
        b:2,
    }
    
    for(let key in obj){
        console.log(key)    
    }
    // a
    // b

    Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致 。

    let obj = {
        a:1,
        b:2,
    }
    
    console.log(Object.keys(obj))
    // ["a", "b"]

    两者之间最主要的区别就是Object.keys( )不会走原型链,而for in 会走原型链;

    Object.prototype.test = ‘test';
    
    var obj= {
        a:1,
        b:2,
    }
    //Object.keys不会输出原型链中的数据;
    console.log(Object.keys(obj))
    // ["a", "b"]
    
    for(var key in obj){
        console.log(key)
    }
    // a
    // b
    // test    //for in 会把原型链中test 输出
  • 相关阅读:
    使用Python操作MySQL数据库
    SQL server数据库语句
    SQL server数据库
    实施工程师
    Vue外卖项目
    每日思考记录(12)
    Vue核心知识点
    jQuery快速入门
    js
    css2
  • 原文地址:https://www.cnblogs.com/yuzhongyu/p/10831561.html
Copyright © 2011-2022 走看看