如何使用hasOwnProperty检查属性
How to check property with hasOwnProperty?
hasOwnProperty()
只检查用户创建的对象吗?
var myObj = {};
myObj.hasOwnProperty('toString'); // returns false
我想知道toString()
在哪个原型中使用?
String.hasOwnProperty('toString');// it's too returns false
Object.hasOwnProperty('toString');// it's too returns false
那么,如何检查toString()
或其他东西在原型链中是什么?
var myArr = ['a','b','c'];
myArr.hasOwnProperty('length');
// returns true, why? but it is of Array or Object...
hasOwnProperty()
只检查用户创建的对象吗?
它适用于所有在其原型链上具有该方法可用的对象(所有对象,除了某些主机对象,即一些IE对象和用Object.create(null)
创建的对象,以及一些其他奇特的方式)。
String
和Object
没有直接设置toString()
(尽管可以自己赋值,但不建议这样做)。
他们确实在他们的原型链上有它。由于使用了匹配的第一个属性查找,并且String
是一个构造函数,因此它将在Function.prototype
上找到它。您可以通过执行…
String.toString == Function.prototype.toString
其他对象有自己的toString()
,这取决于在哪个上下文中什么最有意义。
var myArr = ['a','b','c']; myArr.hasOwnProperty('length');// returns true, why? but it is of Array or Object...
数组有一个直接的length
属性
如果你想知道一个对象在它的原型链上是否有一个可用的属性,你可以使用in
操作符…
var hasProp = 'toString' in String;
相关文章:
- C#asp.net mvc Set CheckBoxFor已检查的具有Model Value的属性
- 如何检查名为id的变量属性
- 继承的属性检查
- 如何检查属性值
- 检查对象的所有属性是否未定义
- 检查来自不同数组的两个元素的一个属性是否相等
- 正在检查对象javascript中是否存在嵌套属性
- vue-js-单选按钮won't默认情况下使用v-model属性进行检查
- 正在检查属性的属性是否存在
- jQuery检查CSS宽度是否大于0,然后添加CSS属性
- 至于所有输入的标签都用指定的属性来设置,例如属性检查=false
- hasOwnProperty 在对照父对象属性进行检查时返回 true
- 检查所有元素的属性并修改另一个元素
- 使用 Chai - 如何检查对象属性是否包含 DOM 元素
- 柴:如何检查异常属性
- 如何从浏览器隐藏视频src属性's检查元素
- Symfony Twig+Haml标记属性检查和属性脚本
- 使& # 39;dom-if& # 39;根据另一个元素中的属性检查条件
- 根据属性检查现有对象的firebase,防止重复
- 事件属性检查器