JavaScript中检测对象是否包含某属性
2018-01-22 11:38
204 查看
实例demo
判断name属性是否存在于原型中
hasPrototypeProperty():原型属性
function Person(){ } Person.prototype.name = "xiaohua"; var person1 = new Person(); console.log(person1.name); //xiaohua console.log(person1.hasOwnProperty("name")); //false console.log("name" in person1); //true person1.name = "xiaoming"; alert(person1.name); //"xiaoming" ——来自实例 alert(person1.hasOwnProperty("name")); //true alert("name" in person1); //true
判断name属性是否存在于原型中
/*由于in 操作符只要通过对象能够访问到属性就返回true,hasOwnProperty()只在属性存在于 实例中时才返回true,因此只要in 操作符返回true 而hasOwnProperty()返回false,就可以确 定属性是原型中的属性*/ function hasPrototypeProperty(object, name){ return !object.hasOwnProperty(name) && (name in object); }
hasPrototypeProperty():原型属性
/*在这里,name 属性先是存在于原型中,因此hasPrototypeProperty()返回true。当在实例中 重写name 属性后,该属性就存在于实例中了,因此hasPrototypeProperty()返回false。即使原 型中仍然有name 属性,但由于现在实例中也有了这个属性,因此原型中的name 属性就用不到了*/ function Person(){ } Person.prototype.name = "xiaohua"; var person = new Person(); alert(hasPrototypeProperty(person, "name")); //true person.name = "xiaoming"; alert(hasPrototypeProperty(person, "name")); //false
相关文章推荐
- javascript,检测对象中是否存在某个属性
- javascript,检测对象中是否存在某个属性
- javascript检测对象中是否存在某个属性判断方法小结
- javascript检测对象中是否存在某个属性判断方法小结
- JavaScript 检测对象是否含有自身属性
- javascript检测对象中是否存在某个属性判断方法小结
- javascript,检测对象中是否存在某个属性
- javascript - 检测对象中是否存在某个属性
- javascript,检测对象中是否存在某个属性
- javascript检测对象中是否存在某个属性
- javascript检测对象中是否存在某个属性判断方法小结
- javascript,检测对象中是否存在某个属性
- javascript检测对象中是否存在某个属性判断方法小结
- javascript检测浏览器是否支持某些方法及属性
- javascript判断嵌套对象属性是否存在
- JavaScript中hasOwnProperty函数方法是返回一个布尔值,指出一个对象是否具有指定名称的属性。
- Python中如何判断对象是否包含某个属性?
- [转载]js javascript 判断字符串是否包含某字符串,String对象中查找子字符,indexOf
- js判断一个对象是否包含属性的方式
- js 判断对象数组中是否包含某个属性的值和对象转化成数组