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 

      

  • 相关阅读:
    MySQL 多列索引优化小记
    Spring MVC + Security 4 初体验(Java配置版)
    Java程序通过代理访问网络
    Spring RESTful + Redis全注解实现恶意登录保护机制
    WinSCP 中普通用户以 root 身份登录 Linux
    Linux下修改系统时区
    Git如何检出指定目录或文件
    朴素贝叶斯
    console.log 被重写覆盖以后如何恢复
    MongoDB 基础命令使用学习记录
  • 原文地址:https://www.cnblogs.com/laneyfu/p/6128834.html
Copyright © 2011-2022 走看看