zoukankan      html  css  js  c++  java
  • or in 、Object.keys()以及Object.getOwnPropertyNames有什么区别?

    or in 、Object.keys()以及Object.getOwnPropertyNames的区别

    var obj= Object.create(parent, {
    b: {
    value: 2,
    writable: true,
    enumerable: true,
    configurable: true
    },
    c: {
    value: 3,
    writable: true,
    enumerable: false,
    configurable: true
    }
    });
    obj.__proto__ = {age:123};

    1、 for in 遍历对象,会将对象自身的属性以及原型上继承的属性都打印出来,但是不会获取不可枚举的属性。

    for(let key in obj){
    console.log(key) // =>b ,age
    }
    

      

    2、Object.keys()遍历对象,获取对象自身可枚举属性。

    var arr = Object.keys(obj);
    console.log(arr) => ['b']

    3、Object.getOwnPropertyNames()遍历对象,获取所有自身属性,包括不可枚举的属性。

    var arr = Object.getOwnPropertyNames(obj);
    console.log(arr) => ['b','c']
    

      

    -------------------------------------------

    个性签名:独学而无友,则孤陋而寡闻。做一个灵魂有趣的人!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

    万水千山总是情,打赏一分行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主,哈哈哈(っ•̀ω•́)っ✎⁾⁾!

  • 相关阅读:
    Tensor总结
    Tensorflow池化
    conda操作
    KS值计算
    supervisor实践
    npm/yarn实践
    nni 环境搭建
    阿里云个人邮箱配置
    Jinja2宏使用
    利用VS code 远程调试 docker 中的 dotnet 应用
  • 原文地址:https://www.cnblogs.com/mahmud/p/10236756.html
Copyright © 2011-2022 走看看