理解Box的实质.js代码:推送和弹出

时间:2019-02-11 18:21:01

标签: javascript this matterjs

我是JavaScript的新手,并且很难直观地理解以下代码段。它是用于在某些物理引擎(matter.js)中创建盒子的代码

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'

我的问题是这个

  • 为什么不只使用w或h,为什么还要给w分配“ this.w”,给h分配“ this.h”
  • 我对push()感到困惑。为什么括号中什么也没有?默认情况下添加了什么?
  • 与pop()相同。去除什么?

1 个答案:

答案 0 :(得分:0)

  

为什么不只使用w或h,为什么还要给w分配“ this.w”,给h分配“ this.h”

这允许w和h为Box的属性。之后,如果您要说

box1 = new Box(10,10,10,10)
console.log(box1.w, box1.h)

您将能够查看和操纵这些属性。因为如果您操作这些属性,矩形将使用这些属性进行绘制,因此矩形的绘制也会发生变化。

  

我对push()感到困惑。为什么括号中什么也没有?它默认添加了什么?

我相信您正在使用p5.js库查看代码。 p5.j​​s中的push()pop()访问绘制状态。本质上,push()是“开始绘制”,而pop()是“停止绘制”。因此,在这里他们访问绘制状态,绘制一个矩形,然后关闭绘制状态。

您可以在p5的documentation上阅读更多内容。