JS构造函数的原型属性与其原型之间的区别
Difference between the prototype property of a JS constructor and it's prototype
构造函数:
function Team (type) {
this.type = type;
}
//this will output this empty object inherited from Object.property
console.log(Team.prototype);
-> Team {}
//this one outputs nothing in my console
console.log(Object.getPrototypeOf(Team));
//is it inheriting from this one, the one for all functions?
-> Function.prototype //??
.prototype
属性和Object.getPrototypeOf
有什么区别?除了存储属性之外,Function.prototype(所有函数和构造函数都继承自的那个)原型还做什么?
Team
是一个函数,因此它继承了Function.prototype
的所有属性。 Function
也是一个(继承自)object
,因此它具有来自Object.prototype.
的所有属性 但是,Object.getPrototypeOf
是 Object 上的"静态"方法,因此它不是继承的。
Object.getPrototypeOf(Team)
指向与Function.prototype
相同的对象。 Team.getPrototypeOf
未定义。
相关文章:
- “util.inherits”和在NodeJS中扩展原型之间的区别
- JS构造函数的原型属性与其原型之间的区别
- 两个对象之间的Javascript原型
- 向构造函数或原型添加属性之间的区别
- 不需要的Javascript效果:原型在实例之间共享闭包
- 理解经典继承和原型继承之间的区别
- 基于类的语言(如Java或Python)和基于原型的语言(例如Javascript)之间的区别
- 试图理解JavaScript中原型和构造函数之间的区别
- 如何在不让web组件的原型进入全局命名空间的情况下维护它们之间的依赖关系
- Javascript 原型和调用之间的区别
- 使用原型和对象文字表示法创建对象之间的区别
- 构造函数中的方法与函数的原型属性之间的差异
- 原型:这两个脚本之间的区别
- 构造函数模式和原型模式之间的区别
- 原型函数和 json 表示法函数之间的区别
- 将方法分配给函数内部或外部原型之间的差异
- 持久化对象之间的MongoDB原型继承
- 在JavaScript实例上编写单个原型和使用多个原型之间的区别?只是风格
- 使用或不使用原型之间的区别:它们显然也在做同样的事情
- 对象与其原型之间的差异