// var myobject={
// foo:"bar",
// func:function(){
// var self=this;
// console.log(this.foo);
// console.log(self.foo);
// (function(){
// console.log(this.foo);//undefined
// console.log(self.foo);//bar
// })();
// }
// };
// myobject.func();
// function User() {}
// User.prototype.sayHello = function() {}
// var u1 = new User();
// var u2 = new User();
// console.log(u1.sayHello === u2.sayHello); // true
// console.log(User.prototype.constructor); // function USer() {}
// console.log(User.prototype === Function.prototype); // false
// console.log(User.__proto__ === Function.prototype); // true
// console.log(User.__proto__ === Function.__proto__); // true
// console.log(u1.__proto__ === u2.__proto__); // true
// console.log(u1.__proto__ === User.__proto__); // false
// console.log(Function.__proto__ === Object.__proto__); // true
// console.log(Function.prototype.__proto__ === Object.prototype.__proto__); // false
// console.log(Function.prototype.__proto__ === Object.prototype); // true
var F = function () {}
Object.prototype.a = function () {}
Function.prototype.b = function () {}
var f = new F();
console.log(f.a, f.b, F.a, F.b);
// 原型链
// f.__proto__ --> F.prototype --> Object.prototype
// F.__proto__ --> Function.prototype --> Object.prototype
console