我遇到了一位同事的逻辑推理,想在提交更改之前弄清楚后果。基本上,我有一堂课:
var MyClass = function(){};
MyClass.prototype = {...}
在另一个文件中,我正在定义一个需要该类的模块,并执行以下操作:
return {
propA: new MyClass().propA,
propB: new MyClass().propB
};
另一种方法是声明一个新的MyClass对象,并按如下方式使用它:
var myObject = new MyClass();
return {
propA: myObject.propA,
propB: myObject.propB
};
使用其中每一项的优点和陷阱是什么?
最佳答案
既然(据我所知,您只是在实例化MyClass
来访问原型属性),为什么不删节中间人呢?
return {
propA: MyClass.prototype.propA,
propB: MyClass.prototype.propB
};
关于javascript - 实例化对象而不将其存储在变量中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24883674/