这篇内容也是之前讲到过的,纯属无聊,莫要见怪。~(~ ̄▽ ̄)~~(~ ̄▽ ̄)~~(~ ̄▽ ̄)~~(~ ̄▽ ̄)~~(~ ̄▽ ̄)~

正如上文所说,如果所有的prototype属性都指向了一个相同的对象,父级对象就会受到子级对象的影响,这不是我们想要的一种结果。

要解决这个问题,我们就要给她们找个第三者了,来破坏她们之间这种暧昧的关系,那么我们可以利用一个空函数F(),并将她的原型设置为我们的父级构造函数,然后我们可以new F()来创建不包含父级对象属性的对象,也就是说父级的属性我这里是不能再设置的,同时又可以继承父对象的一切属性了。虽然有点绕,看个小例子理解一下:

function her(){};
her.prototype.name = 'Anna';
her.prototype.toString = function(){
    return this.name;
}
function his(){};
var F = function(){};
F.prototype = her.prototype;
his.prototype = new F();
his.prototype.constructor = his;
his.prototype.name = 'Jock';
his.prototype.sex = 'men';
function child(width, height){
    this.width = width;
    this.hieght = height;
}
var F = function(){}
F.prototype = his.prototype;
child.prototype = new F();
child.prototype.constructor = child;
child.prototype.name = 'Alen';

通过这种方法,我们就可以保持住原型链,(有时候两个人还是之间还是需要个第三者来调剂一下生活的,不然会不会很无趣?)

my._proto_ === child.prototype;  // true
my._proto_.constructor === child;  // true
my._proto_._proto_ === his.prototype; // true
my._proto_._proto_._proto_.constructor === her;  // true

并且父对象的属性不会被子对象的属性所覆盖。

最新文章

  1. 谷歌浏览器对uploadify(swf)上传控件 崩溃问题
  2. mybatis执行批量更新batch update 的方法
  3. springMVC的一些工具类
  4. LeetCode Maximum Subarray (最大子段和)
  5. A. Puzzles CodeForces Round #196 (Div.2)
  6. 腾讯微博java(android)sdk新增微博api详细介绍
  7. Python脚本控制的WebDriver 常用操作 <二十七> 文件下载
  8. SpringMVC关于json、xml自动转换的原理研究[附带源码分析 --转
  9. if exists用法
  10. 转:redis windows下的环境搭建
  11. mysql 按日期查询
  12. [Asp.net]常见word,excel,ppt,pdf在线预览方案(转)
  13. 【 js 基础 】【 源码学习 】 setTimeout(fn, 0) 的作用
  14. 初识homebrew
  15. android使用百度地图最新sdk5.0后后代码混淆时,地图无法显示闪退问题
  16. Python 函数中参数的分类及使用
  17. sql语句——行列互换
  18. linux 为tomcat指定jdk
  19. mongorestore 一次踩雷
  20. Codeforces Round #287 (Div. 2) C. Guess Your Way Out! 水题

热门文章

  1. Party Games UVA - 1610 贪心
  2. 有限状态机(FSM)的设计与实现
  3. dev c++ 提示没有iostream.h文件
  4. git status 下中文显示乱码问题解决
  5. 为什么要用全文搜索引擎:全文搜索引擎 VS 数据库管理系统
  6. HDU——1062Text Reverse(水题string::find系列+reverse)
  7. Java-河内塔问题
  8. Windows server 2008 R2 + IIS7.5,ASP网站设置
  9. 【CF725D】Contest Balloons(贪心,堆)
  10. 【CF659E】New Reform(图的联通,环)