zoukankan      html  css  js  c++  java
  • javascript的propertyIsEnumerable()方法使用介绍

    hasOwnProperty() 方法用来判断某个对象是否含有指定的自身属性。

    propertyIsEnumerable()是用来检测属性是否属于某个对象的,如果检测到了,返回true,否则返回false,下面为大家介绍下其具体的使用

    判断某个属性是否存在与某个对象中,可以通过in运算符,hasOwnProperty()和propertyIsEnumerable()方法来完成.
    in运算符,如果对象的自有属性或继承属性中包含这个属性,则返回true.
    对象的hasOwnProperty()方法用来检测给定的名字是否是对象的自有属性.
    propertyIsEnumerable()是hasOwnProperty()的增强版,只有检测到时自有属性且这个属性的可枚举性为true时才能返回true.


    /* 
    propertyIsEnumerable()是用来检测属性是否属于某个对象的,如果检测到了,返回true,否则返回false
    1.这个属性必须属于实例的,并且不属于原型
    2.这个属性必须是可枚举的,也就是自定义的属性,可以通过for..in循环出来的. 
    只要符合上面两个要求,就会返回true; 
    */ 
    function MyObject() { 
    this.name = "我是实例的属性"; 

    var obj = new MyObject(); 
    console.log(obj.propertyIsEnumerable("name"));//true 
    MyObject.prototype.say = "我是原型的属性"; 
    console.log(obj.propertyIsEnumerable("say")); //false 
    for (var key in obj) { 
    console.log(key);

    输出://name,say 

    obj.hasOwnProperty("name")  //true

    由于 for ... in 枚举是包含原型链上的属性的,所以如果你只想遍历对象本身的属性,可以:

    for (var key in obj) { 
      console.log(key);

    输出://name,say 

    for (var key in obj) { if (obj.hasOwnProperty(key) { console.log(key); } }
    //输出:name 

      

  • 相关阅读:
    博客推荐
    oracle11g dataguard 安装手册(转)
    Linux文件系统介绍(转)
    降低磁盘IO使Oracle性能优化(转)
    关于AWR报告命中率指标的解释(转)
    oracle 锁的介绍 (转)
    oracle undo redo 解析
    oracle sqlplus 连接不正常
    Oracle技术嘉年华
    断线的回忆
  • 原文地址:https://www.cnblogs.com/laneyfu/p/6128834.html
Copyright © 2011-2022 走看看