参考的别人家的博客http://www.cnblogs.com/ljchow/archive/2010/06/08/1753526.html
###JS原型
####JS原型,就是原型对象,简称原型。不仅构造函数有,普通函数也有
* `普通函数:`
```javascript
function puTong(){
};
alert(puTong.prototype instanceof Object);//true
alert(puTong.prototype instanceof Function);//false
```
* `构造函数:`
```javascript
function A(x){
this.x = x;
}
A.prototype.a = "a";
function B(x,y){
this.y = y;
A.call(this.x);
}
B.prototype.b1 = function(){
alert("b1");
}
B.prototype = new A();
B.prototype.b2 = function(){
alert("b2");
}
B.prototype.constructor = B;
var obj = new B(1,3);
```
*instanceof只能判断对象和函数,返回值是布尔值。其余的例如数字、字符串等都不能判断 。例如:*
```javascript
var panDuan = new String("hello");
alert(panDuan instanceof String);//true
alert(typeof panDuan);//false
```
*typeof能判断一个元素的类型,也可以判断一个元素是否存在。例如:*
```javascript
alert(typeof 123); //number
alert(typeof "hello"); //string
alert(typeof function(){}); //function
alert(typeof true); //boolean
alert(typeof abc); //undefined
alert(typeof null); //object
```