javascript检测属性
2024-08-26 18:36:13
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
最新文章
- Mysql支持的数据类型(总结)
- OSI七层模型
- iOS开发UI篇—懒加载
- NSURLSession总结
- kali开启ssh
- C# winform窗体设计-对数据库执行增删改操作
- div 等高
- git log 常用命令
- Java基础毕向东day05 对象与对象的区别,匿名内部类,函数的执行流程。
- nutch安装配置
- ASP.NET MVC轻教程 Step By Step 1 ——入门
- 收集SQLServer线程等待信息
- 基于GBT28181:SIP协议组件开发-----------第一篇环境搭建
- CentOS(minimal)+Nginx+php+mysql实现宿主访问虚拟机
- [算法] avl树实现
- 抽象类 abstract 和 接口 interface 类的区别
- apache 负载测试工具 ab
- Ajax入门例子
- More than the maximum number of request parameters
- PS小技巧之完美抠图