原型和构造函数(2)
2018-07-18 01:43:36来源:博客园 阅读 ()
访问原型的方法
1,通过构造函数访问原型
function Person(){ } var p =new Person(); Person.prototype.msg ='在不在'
2,通过实例化对象访问原型
function Person(){ } var p =new Person(); p.__proto__.sayHello = function(){ console.log('你好')//你好 } p.sayHello()
__proto__属性是一个非标准的属性,为了保证通用性,这个属性不推荐使用。
__proto__属性的用途,主要用来做调试
原型图 原型和构造函数,实例化对象三者的关系
可以看到,每一个构造函数都会有一个prototype属性,这个属性指向一个原型对象,这个构造函数通过new生成一个新的实例对象,这个实例拥有一个__proto__属性,而这个对象这个指向原型对象。
其中需要注意的是替换原型的时候,需要手动添加constructor
function Person(){ } Person.prototype = { name : '刘钢蛋' }; console.log(Person.prototype.constructor);//? Object() { [native code] }
如果不加constructor属性会导致constructor指向的是Object
function Person(){ } Person.prototype = { name : '刘钢蛋', constructor: Person }; console.log(Person.prototype.constructor);//? Person(){}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:JS获取元素宽高的两种情况
下一篇:重新理解闭包
- JavaScript函数表达式详解及实例 2020-03-25
- 带你了解JavaScript中的函数 2020-03-08
- 详谈构造函数加括号与不加括号的区别 2020-01-17
- JavaScript匿名函数与委托使用示例 2020-01-07
- JavaScript中的apply和call函数详解 2020-01-07
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash