标题 | 标签 |
---|---|
HasPrototypeObject(判断对象属性是否存在于原型中) | object,prototype(对象,原型) |
判断属性名存在于实例对象中还是存在于原型对象中。
- 使用Object.hasOwnProperty()方法与in 操作符就能确定是实例对象中含有该属性还是原型对象中含有该属性。
- 第一个参数为传入的对象,即实例对象或原型对象。
- 第二个参数为属性名,即要判断的属性名。
代码如下:
const hasPrototypeObject = (obj, name) =>
!obj.hasOwnProperty(name) && name in obj;
ts代码如下:
调用方式:
function Person() {}
Person.prototype.name = "夕水";
let person = new Person();
hasPrototypeObject(person, "name"); //true
应用场景
以下是基于上述代码实现的示例:
结果如下:
<iframe src="codes/javascript/html/has-prototype-object.html"></iframe>