我想知道下面哪一个是最好的实践,如果它真的很重要?
我应该像这样使用这句话:
var object = {
x: 20,
y: 10,
width: this.x,
height: this.y,
render: function () { //renders object on canvas
ctx.fillRect(this.x, this.y, this.width, this.height);
}
};
或者我应该像这样使用对象名称:
var object = {
x: 20,
y: 10,
width: object.x,
height: object.y,
render: function () { //renders object on canvas
ctx.fillRect(object.x, object.y, object.width, object.height);
}
};
提前多多感谢!
答案 0 :(得分:0)
这两种情况都不适合你。
var object = {
x: 20,
y: 10,
width: this.x,
height: this.y,
render: function () { //renders object on canvas
ctx.fillRect(this.x, this.y, this.width, this.height);
}
};
在上面的场景中:width.x,height:this.y不起作用。因为对象this关键字只能在render函数中使用。对于在渲染函数外部编写的渲染函数,这是窗口对象。
var object = {
x: 20,
y: 10,
width: object.x,
height: object.y,
render: function () { //renders object on canvas
ctx.fillRect(object.x, object.y, object.width, object.height);
}
};
在第二个场景width:object.x中,height:object.y将无法工作,因为您尝试在其定义的中间使用对象变量。渲染功能中没有任何问题。
答案 1 :(得分:-1)
使用第一个,因为对于其他开发人员而言,你所指的是更加清晰。
它是为你想要的东西而制作的,所以通过使用它,你清楚地传达你的意图而不是混淆它们。