Javascript Prototype
var Student = function(name, sex, school_year){ this.name = name; this.sex = sex; this.school_year = school_year; } // メソッドは生成したインスタンスごとでも同じものになる。 // そのため複数のインスタンスで同じメソッドを生成してしまうと、重複したメソッドが生成されてメモリを圧迫する可能性がある。 // Prototypeでメソッドを定義すると、インスタンス生成時にメソッドは参照となり、生成はされない。= メモリも無駄に使われない。 Student.prototype.getName = function(){ return this.name; } // ※アロー関数はthisが固定されるため使えない!! Student.prototype.getSex = () =>{ return this.sex; } var yamada = new Student('yamada', 'female', '3'); console.log(yamada.getName()); // yamada console.log(yamada.getSex()); // undefined // まとめることもできる Student.prototype = { getName : function(){ }, getSex : function(){ } }