我尝试理解JS中的原型设计概念。我找到了以下示例。我问自己,如果函数是在对象之外声明的。保存资源有帮助吗?
JS
class Foo{
private:
int a = 0;
public:
Foo(){}
Foo(int i): a(i) {}
}
答案 0 :(得分:0)
是的,确实如此。 在对象构造函数(Animal)中声明方法时,每次实例化对象时都会将其写入内存。但是如果我们你是原型属性,那么Animal的每个实例都会共享这个方法,它只会被写入内存一次。
答案 1 :(得分:0)
在Javascript中使用函数作为类时。通常,在函数内初始化字符串或数字或其他原始属性;和方法进入原型(这确实有助于节省资源:))。就像你的示例代码一样。
还有其他方法可以实现相同的"优雅的行为",但使用原型是最基本的方式。