原型和非原型方法
Prototyped and a non-prototyped method?
我想知道,JavaScript 中的原型和非原型方法之间的区别是什么?任何帮助都深表感谢。
非原型化方法将在类的每个实例中占用内存。
它还将(假设它是在类构造函数的作用域中声明的(有权访问在该作用域中声明的任何其他私有变量(或方法(。
例如,这将为每个对象创建一个函数的实例,并且该函数可以访问myVar
:
function MyObject() {
var myVar;
this.func = function() { ... };
};
在这种情况下,对象的每个实例之间只有一个函数实例共享,但它将无法访问myVar
:
function MyObject() {
var myVar;
};
MyObject.prototype.func = function() { ... };
相关文章:
- 使用“;这个“;JavaScript原型方法中的关键字
- 引用类变量中的原型方法
- 如何从对象的原型方法访问JavaScript对象属性
- 如何从构造函数中调用js原型方法
- Javascript不调用原型方法
- 有没有任何情况下,一个方法不应该是原型方法
- 调用影子原型方法的更简单/更好的方法
- 当对象从服务器发送到客户端时,JS原型方法消失了
- 构造 JavaScript Array 原型方法
- 在Javascript中扩展继承的原型方法
- 如何在另一个原型中创建可调用的原型方法
- 覆盖原型方法
- 实现原型方法
- 从原型方法更改实例属性
- XrayWrapper 错误(值是可调用的)在 Firefox 插件中覆盖原型方法时
- 避免在外部称为原型方法中丢失对象实例
- 原型方法不是一个函数,为什么
- 是否可以从 javascript 中的原型方法访问私有类属性
- 找不到 Javascript 原型方法覆盖
- 调用本机原型方法时扩展或继承对象原型