---
title: 继承与原型链
createTime: 2018/07/06 09:40:54
permalink: /article/extends-prototype
author: pengzhanbo
tags: 
  - javascript
top: false
type: null
---

当谈到继承时，javascript只有一种结构：对象。
每个实例对象（object）都有一个私有属性（\_\_proto\_\_）指向它的构造函数的原型对象(__prototype__)。
该原型对象也有自己的原型对象（（\_\_proto\_\_），层层向上，直到有一个的原型对象为null。根据定义，null没有原型，并作为这个原型链的最后一个环节。

<!-- more -->

几乎所有javascript中的对象，都是位于原型链顶端的`Object`的实例。

## 基于原型链的继承

### 继承属性
