首页 > 编程语言 > 详细

Javarscript中的原型链

时间:2015-11-15 23:24:58      阅读:379      评论:0      收藏:0      [点我收藏+]

每个函数中都有一个prototype属性,该函数被new操作符用于创建对象,将一个函数的prototype属性指向某个对象,由此形成一条链,称之为原型链。

自由属性和原型属性:

一:当查找一个对象的属性时,JavaScript 会向上遍历原型链,直到找到给定名称的属性为止,到查找到达原型链的顶部 - 也就是 Object.prototype - 但是仍然没有找到指定的属性,就会返回 undefined。

通过对象添加的属性为自有属性。

function Hero(){

    this.name="Anna";

}

Hero.prototype.age=23;//向函数的原型中添加属性

var hero=new Hero();

console.log(‘name‘ in hero());//true in判断是否是自由属性

console.log(hero.hasOwnPrototype(‘name‘));//true

console.log(‘age‘ in hero);//true

console.log(hero.hasOwnPrototype(‘age‘));//false

hero.age=30;//自有属性

console.log(hero.hasOwnPrototype(‘age‘));//返回true

二:可以用isPrototypeOf()方法判定一个prototype对象是否是存在于另一个对象的原型链中。返回布尔值。

本文出自 “Web前端技术” 博客,请务必保留此出处http://warmdoll.blog.51cto.com/10881334/1712964

Javarscript中的原型链

原文:http://warmdoll.blog.51cto.com/10881334/1712964

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!