您好我想创建一个新的blob对象:
function Blob(X,Y,R) {
this.x = X;
this.y = Y;
this.r = R;
this.show = function (ctx) {
ctx.arc(this.x,this.y,this.r,0,2*Math.PI,false);
ctx.fill();
}
this.moveTo = function(x,y,ctx){
ctx.strokeStyle = "#ffffff"
ctx.arc(this.x,this.y,this.r,0,2*Math.PI,false);
ctx.fill();
ctx.strokeStyle = "#000000"
ctx.arc(x,y,r,0,2*Math.PI,false);
ctx.fill();
}
var myBlob = new Blob(250,250,50);
blob.show(ctx);
当我创建对象时,我收到一条错误消息:
Uncaught TypeError:无法构造'Blob':第一个参数既不是数组,也不是索引属性。
答案 0 :(得分:0)
您需要提供完整的代码。
根据你所拥有的,你没有一个名为Blob的类。你也没有名为show的功能。
如果您需要了解更多信息,请查看https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Classes。
class BlobClass {
constructor(x, y, r) {
this.x = x;
this.y = y;
this.r = r;
}
get show() {
ctx.strokeStyle = "#ffffff"
ctx.arc(this.x,this.y,this.r,0,2*Math.PI,false);
ctx.fill();
}
}
const blob = new BlobClass(10, 10, 10);
blob.show()
这应该做我认为你想做的事情。您可能不会将类命名为Blob,因为这是特征中构建的名称。
答案 1 :(得分:0)
不确定您想要实现的目标,但正如错误消息所示,您在创建blob时传递了错误的参数。例如,您可以传递一个列表,因此将创建一个blob:
var myBlob = new Blob([250,250,50]);
但请提供更多详情。