可能有同学不了解__proto__这个对象(懂得略过),__proto__需要通过实例对象来访问,他存储的是构造函数的prototype对象值。
1 function f() {
2
3 }
4
5 var f1 = new f();
6
7 console.log(Function.prototype.constructor === Function);//1、对象函数的构造始终指向本身
8 console.log(f.prototype.constructor === f);//2、对象函数的构造始终指向本身
9 console.log(f.__proto__.constructor === Function);//3、f是Function的实例, f.__proto__===Function.prototype 那么
10 console.log(f.constructor === Function);//4、与3一致 f.constructor 就是f.__proto__
11 console.log(f.constructor === Function.prototype.constructor);//5、参照1