您的位置:首页 > 其它

对象原型的理解 __proto__和prototype的区别

2019-05-28 17:46 716 查看

前言:function具有prototype属性,function是一种特殊的对象
对象都具有__proto__(内置的原型),一般没有prototype属性(Object除外)
Object对象 是所以对象最根部的原型

<script>
var a = {};
function b(){};
var c = new b();
b.prototype.frpm="sad";
console.log(Object); // ƒ Object() { [native code] } (Object是一种特殊的函数)
console.log(a.prototype); // undefined  (a属于对象)
console.log(Object.prototype); // Object
console.log(Object.prototype.__proto__); // null 证明Object是所有对象最底层的原型
console.log(a.__proto__);// Object
console.log(a.__proto__ == Object.prototype);  // true
console.log(b.prototype); // {frpm: "sad", constructor: ƒ}
console.log(b.prototype.__proto == Object.prototype);  // true
console.log(c.prototype);// undefined
console.log(c.__proto__ ==  b.prototype); //true
</script>

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: