首页 > 代码库 > JS之理解对象
JS之理解对象
1.__proto__
每个对象都有一个__proto__属性,指向该对象的原型对象
<script> var person = function(name,city){ this.name = name; this.city =city; } person.prototype.showName = function(){ return this.name; } var p = new person(‘pmx‘,‘shanghai‘); console.log(p.__proto__ == person.prototype);</script>
2.isPrototypeOf(obj)用来判断当前对象是否是obj的原型对象
<script> var person = function(name,city){ this.name = name; this.city =city; } person.prototype.showName = function(){ return this.name; } var p = new person(‘pmx‘,‘shanghai‘); console.log(person.prototype.isPrototypeOf(p));</script>
3.getPrototypeOf(obj)得到obj的原型对象
<script> var person = function(name,city){ this.name = name; this.city =city; } person.prototype.showName = function(){ return this.name; } var p = new person(‘pmx‘,‘shanghai‘); console.log(Object.getPrototypeOf(p) == person.prototype);</script>
4.hasOwnProperty用来判断属性是存在于本身还是原型对象中
<script> var person = function(name,city){ this.name = name; this.city =city; } person.prototype.age = 26; person.prototype.showName = function(){ return this.name; } var p = new person(‘pmx‘,‘shanghai‘); console.log(p.hasOwnProperty("name")); console.log(p.hasOwnProperty("age"));</script>
5.in用来判断obj是否有指定属性,不论该属性存在于对象上,还是原型链上
<script> var person = function(name,city){ this.name = name; this.city =city; } person.prototype.age = 26; person.prototype.showName = function(){ return this.name; } var p = new person(‘pmx‘,‘shanghai‘); console.log("name" in p); console.log("age" in p);</script>
JS之理解对象
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。