重複の可能性:
Javascript での「プロトタイプ」と「これ」の使用?
コンストラクター内でのプロトタイプ メソッドの定義
これら2つの定義に違いはありますか?
function Task(description, value) {
this.id = 0;
this.subId = 0;
this.parent = null;
this.children = new Array();
this.description = description;
this.value = value;
Task.prototype.getNextId = function () {
return this.subId++;
},
Task.prototype.addTask = function (task) {
task.id = this.getNextId();
this.children[task.id] = task;
task.parent = this;
},
Task.prototype.remove = function () {
this.parent.children.remove(this.id);
}
}
すべてのプロトタイプ メソッドは Task 定義内にありますか?
function Task(description, value) {
this.id = 0;
this.subId = 0;
this.parent = null;
this.children = new Array();
this.description = description;
this.value = value;
}
Task.prototype.getNextId = function () {
return this.subId++;
},
Task.prototype.addTask = function (task) {
task.id = this.getNextId();
this.children[task.id] = task;
task.parent = this;
},
Task.prototype.remove = function () {
this.parent.children.remove(this.id);
}
違いがあるかどうかはわかりません。OOP ビューから見ると、内部の定義がよく見えます。
ありがとう!