JavaScriptで関数を呼び出す方法はたくさんありますが、これは私にはうまくいきません。誰かが私が間違っていることを正確に教えてもらえますか?
プロトタイピング(例)を試しgameObject.prototype = {};
ましたが、何らかの理由でうまくいきませんでした。今、私は関数内で直接メソッドを割り当てようとしていますが、それも機能していません。
この写真の何が問題になっていますか?
function gameObject() {
this.o = {};
this.setimage = function(i) {
this.o.img = i;
};
this.setDimensions = function(w, h) {
this.o.width = w;
this.o.height = h;
};
this.setPosition = function(x, y) {
this.o.x=x;
this.o.y=y;
};
this.create = function() {
var el = document.createElement("div");
el.className = "object " + this.o.cname;
el.style.width = width * this.o.w;
el.style.height = height * this.o.h;
el.style.position = "absolute";
el.style.top = height * this.o.y;
el.style.left = width * this.o.x;
map.appendChild(el);
};
this.setClass = function(c) {
this.o.cname = c;
};
return this.o;
}
私が欲しいのはこのようなものです:
var d = new gameObject();
d.setClass("class");
d.setDimensions(0.8, 0.15);
私はまだオブジェクト指向プログラミングにかなり慣れていないので、語彙が正しいかどうかさえわかりません。私がやろうとしていることは何ですか、そしてそれを正確に行うための適切な方法は何ですか?