var CanvasDraw = {
canvas:null,//canvas元素
context:null,//canvas环境
fps:30,//帧频
type:null, //类型 letter或 img 对象
drawObj:null,
gap:null,
dotsData:[],
dots:[],
Init:function(canvas,width,height,type,drawObj,gap,fps,fn){
CanvasDraw.canvas = canvas;
CanvasDraw.context = canvas.getContext("2d");
CanvasDraw.canvas.width=width;
CanvasDraw.canvas.height=height;
CanvasDraw.fps = fps || 30;
CanvasDraw.type = type || "letter";
CanvasDraw.gap=gap||10;
CanvasDraw.drawObj=drawObj;
CanvasDraw.dotsData=[];
CanvasDraw.dots=[];
CanvasDraw.ShapeBuilder.Init();
},
Render:function(canvas,width,height,type,drawObj,fps,fn){
this.Init(canvas,width,height,type,drawObj,fps,fn);
},
StopRender:function(fn){
}
}
De plus, est-ce considéré comme un constructeur ?
Programmation orientée objet, s'il y a des avantages à cette façon d'écrire, évitez de polluer les variables globales
C'est une méthode d'un objet
Fonction littérale d'objet
Méthode d'écriture littérale d'objet, ce code crée un objet CanvasDraw, pas un constructeur.
Merci pour l'invitation ! Il s'agit d'une programmation orientée objet. Ce n'est pas un constructeur, le constructeur est une méthode, vous n'êtes qu'un objet.
Celui avec new est le constructeur. C'est ainsi que vous écrivez l'objet littéral
.