JavaScript对象范围-在对象方法中使用对象变量
JavaScript Object Scope - using object variables within object methods
我正在努力理解JavaScript对象语法。我有一个画布元素,我正在绘制,我想改变我绘制的图案。我希望它能像这样工作:
pattern1 = {
'x':0,
'y':0,
'draw': function() {
context.clearRect(0,0,w,h);
context.save();
context.translate(this.x, this.y);
context.fillText('Hello', 0, 0);
context.restore();
this.x += 1;
this.y += 1;
}
};
但这并不奏效。变量"x"answers"y"不在"this"范围内。因此,我没有使用它,而是明确地引用对象:"pattern1.x"answers"pattern1.y"。但似乎应该有更好的方法来做到这一点。
与其说我在这里寻找一个"解决方案",不如说我在寻找一个解释。谢谢
pattern1 = function (){
this.x=0;
this.y=0;
this.draw= function() {
context.clearRect(0,0,w,h);
context.save();
context.translate(this.x, this.y);
context.fillText('Hello', 0, 0);
context.restore();
this.x += 1;
this.y += 1;
}
};
var patObj=new pattern1 (); // Function Calling
patObj.draw();
相关文章:
- 如何在HTML中显示服务器对象变量
- 在Javascript中重新分配对象变量时,原始对象会发生什么
- Javascript 方法看不到对象变量
- JavaScript对象范围-在对象方法中使用对象变量
- 将对象(变量)传递给angularjs指令
- 对象变量在 JavaScript 中是不可访问的
- 无法访问公共JavaScript对象变量
- 可以't获取具有“t”的对象变量;这个“;由setTimeout()函数调用的对象函数中的属性
- Javascript:如何在回调中设置父对象变量
- 从方法内部设置对象变量
- 访问对象中的对象变量
- JavaScript 中的对象变量
- 从 json 代码中删除 javascript 对象变量名称文本
- 将变量传递到对象变量中
- JavaScript 如何重新识别事件对象变量
- 从对象变量中获取子节点
- 使对象变量在所有“更深”的范围内都是可访问的
- 从方法 JavaScript 访问对象变量
- 如何在 javascript 中保存对象变量的状态
- 无法访问IE和Mozilla中javascript的类对象变量