zoukankan      html  css  js  c++  java
  • javascript检测属性

    javascript 对象可以看做属性的集合。我们可以通过三种方式来判断某个属性是否存在于某个对象中。

      1.in操作符

    var o={x:1}
     "x" in o //True :x是o的属性
     "y" in o // False:y不是o的属性
     "toString" in o //True 通tostring 从object继承过来的。
    

     2.hasOwnPreperty()方法

    var o={x:1}
     o.hasOwnPreperty("x") //True x为o的属性
     0.hasOwnPreperty("y") //False y部位o的属性
     o.hasOwnPreperty("toString") //True 通tostring自object继承过来的。
    

       3.propertyIsEnumerable()为ECMAScript5支持,是hasOwnPreperty()的增强版,此方法,只有检测到自有属性且这个属性的可枚举性为true才为true 

    var o=inherit({y:2});
    o.x=1;
    o.propertyIsEnumerable("x") //true o有一个可枚举的自有属性x
    o.propertyIsEnumerable("y") //false y是继承来的。
    Object.prototype.propertyIsEnumerable("toString"); //false :不可以枚举的。
    

    4.使用!==判断属性是否存是undefined

    var o={x:1}
    o.x !== undefined; //true :o中有属性
    o.y !== undefined; //false:o中没有属性y
    o.toString != undefined //true:o中继承了tostring
    

      

       

  • 相关阅读:
    118.Java_前定义
    117.数据结构概述(定义,基本术语,层次)
    116.C语言_文件
    115.C语言_函数
    java数组
    sql语句学习(第二季
    linux查看内存
    增强型for和Iterator学习
    ArrayList和LinkedList
    java并发回答
  • 原文地址:https://www.cnblogs.com/sharpmap/p/3723003.html
Copyright © 2011-2022 走看看