hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象。不过需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。格式如下:
Js代码
1. object.hasOwnProperty(proName);
object.hasOwnProperty(proName);
判断proName的名称是不是object对象的一个属性或对象。
举例如下:
Js代码
1. var bStr = "Test String".hasOwnProperty("split"); // 得到false, 因为不能检测原型链中的属性
2. var bStr1 = String.prototype.hasOwnProperty("split"); //String对象的原型上本来就有这个属性,自然返回true
3. var bObj = ({fnTest:function(){}}).hasOwnProperty("fnTest"); // 返回true,因为不是检测原型中的属性
var bStr = "Test String".hasOwnProperty("split"); // 得到false, 因为不能检测原型链中的属性
var bStr1 = String.prototype.hasOwnProperty("split"); //String对象的原型上本来就有这个属性,自然返回true
var bObj = ({fnTest:function(){}}).hasOwnProperty("fnTest"); // 返回true,因为不是检测原型中的属性
http://www.w3school.com.cn/js/as_js_referencetypes.asp
Object 对象
Object 对象自身用处不大,不过在了解其他类之前,还是应该了解它。因为 ECMAScript 中的 Object 对象与 Java 中的 java.lang.object 相似,ECMAScript 中的所有对象都由这个对象继承而来,Object 对象中的所有属性和方法都会出现在其他对象中,所以理解了 Object 对象,就可以更好地理解其他对象。
Object 对象具有下列属性:
constructor
对创建对象的函数的引用(指针)。对于 Object 对象,该指针指向原始的 Object() 函数。
Prototype
对该对象的对象原型的引用。对于所有的对象,它默认返回 Object 对象的一个实例。
Object 对象还具有几个方法:
hasOwnProperty(property)
判断对象是否有某个特定的属性。必须用字符串指定该属性。(例如,o.hasOwnProperty("name"))
IsPrototypeOf(object)
判断该对象是否为另一个对象的原型。
PropertyIsEnumerable
判断给定的属性是否可以用 for...in 语句进行枚举。
ToString()
返回对象的原始字符串表示。对于 Object 对象,ECMA-262 没有定义这个值,所以不同的 ECMAScript 实现具有不同的值。
ValueOf()
返回最适合该对象的原始值。对于许多对象,该方法返回的值都与 ToString() 的返回值相同。
分享到:
相关推荐
JavaScript中hasOwnProperty函数方法是返回一个布尔值,指出一个对象是否具有指定名称的属性。 hasOwnProperty()使用方法: object.hasOwnProperty(proName)其中参数object是必选项。一个对象的实例。proName是必...
hasOwnProperty() 方法用来判断某个对象是否含有指定的自身属性。 语法 obj.hasOwnProperty(prop) 参数 •prop •要检测的属性名称。 描述 所有继承了 Object.prototype 的对象都会从原型链上继承到 ...
JavaScript中hasOwnProperty函数方法是返回一个布尔值,指出一个对象是否具有指定名称的属性。 使用方法:object.hasOwnProperty(proName) 其中参数object是必选项。一个对象的实例。proName是必选项。一个属性名称...
// Poisoning Object.prototype Object.prototype.bar = 1; var foo = {goo: undefined}; foo.bar; // 1 'bar' in foo; // true foo.hasOwnProperty('bar'); // false foo.hasOwnProperty('goo')...hasOwnProperty 作为
js-Polyfill_Object-...//Polyfilled & Native:console.dir([obj1.hasOwnProperty('a'),//trueobj1.hasOwnProperty('b'),//trueobj1.hasOwnProperty('c'),//falseobj2.hasOwnProperty('a'),//trueobj2.hasOwnProperty
hasOwnProperty()函数用于指示一个对象自身(不包括原型链)是否具有指定名称的属性。如果有,返回true,否则返回false。 该方法属于Object对象,由于所有的对象都”继承”了Object的对象实例,因此几乎所有的实例对象...
这两个属性都是Object.prototype所提供:Object.prototype.hasOwnProperty()和Object.prototype.isPropertyOf() 先讲解hasOwnProperty()方法和使用。在讲解isPropertyOf()方法和使用 看懂这些至少要懂原型链 一、...
js中hasOwnProperty的属性及实例用法详解.docx
in操作符只要通过对象能访问到属性就返回true。hasOwnProperty()只在属性存在于实例中时才返回true。下面通过本文给大家分享JavaScript中in和hasOwnProperty区别详解,感兴趣的朋友一起看看吧
主要介绍了js中的hasOwnProperty和isPrototypeOf方法使用实例,需要的朋友可以参考下
当检测某个对象是否拥有某个属性时,hasOwnProperty 是唯一可以完成这一任务的方法,在 for in 循环时,建议增加 hasOwnProperty 进行判断,可以有效避免扩展本地原型而引起的错误
obj.hasOwnProperty(attr) 判断是否是原型中的属性,false就是原型中的属性,下面这篇文章主要给大家介绍了一道利用hasOwnProperty给数组去重的面试题,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
我们在js中可能经常会用到for in来遍历对象中的属性,当然for in中得到的属性,只能是可枚举的属性,for in的时候,它会把对象的属性(包括原型的属性)遍历一遍,看面看示例就明白了
而hasOwnProperty则是判断对象实例的是否具有某个属性。 示例代码: [removed] function Person(){ } Person.prototype.name = "allen"; var person = new Person(); console.log(person.hasOwnProperty("name...
Js中使用hasOwnProperty方法检索ajax响应对象的例子.docx
Object.prototype.hasOwnProperty.call快捷方式 安装 npm install --save has 用法 var has = require ( 'has' ) ; has ( { } , 'hasOwnProperty' ) ; // false has ( Object . prototype , 'hasOwnProperty' ) ; //...
下面小编就为大家带来一篇详谈js使用in和hasOwnProperty获取对象属性的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
js代码-去重:filter + hasOwnProperty