Processing p5.js-何时使用var和this.varName声明变量

Processing p5.js-何时使用var和this.varName声明变量,processing,var,p5.js,Processing,Var,P5.js,我还在想如何使用p5.js。在常规java中,必须使用其数据类型声明每个变量,例如intfoo=0 在p5中,我知道您可以只使用var foo,但也可以使用this.foo声明变量。如果有人能澄清什么时候是使用var的合适时间,以及我什么时候可以使用this,那将非常有帮助 例如,如果我想在一个方法中声明一个变量,我应该使用var foo=thing还是可以使用this.foo=thing来声明它?声明全局变量或引用传递到方法中的对象时应该使用什么 谢谢 首先,p5不是一种语言,它是一个Java

我还在想如何使用p5.js。在常规java中,必须使用其数据类型声明每个变量,例如
intfoo=0

在p5中,我知道您可以只使用
var foo
,但也可以使用
this.foo
声明变量。如果有人能澄清什么时候是使用
var
的合适时间,以及我什么时候可以使用
this
,那将非常有帮助

例如,如果我想在一个方法中声明一个变量,我应该使用
var foo=thing
还是可以使用
this.foo=thing
来声明它?声明全局变量或引用传递到方法中的对象时应该使用什么


谢谢

首先,p5不是一种语言,它是一个Javascript库,您使用的是Javascript,而不是p5

说到你的问题,如果你想使用一些函数作为数据类型,类似于java中的一个类,并且希望它的所有“实例”都有自己不同的变量,你可以使用
this
。如果它们只是以某种方式使用的变量,但不需要为每个实例指定,或者如果函数不是构造函数,也不作为数据类型使用,则只需使用
var

同样,javascript中没有类内容,为了“模拟”java类,您必须编写所谓的构造函数,但请注意构造函数不应返回任何内容。下面是java中
car
类的一个示例:

class car {
  int speed = ___;
  String model = ___;
  static int numOfWheels = ___;
}
这是javascript(构造函数)中的外观:

如果您声明一个变量而不使用
this
,则可以将它粗略地与java类中的静态变量进行比较,因为它在所有实例中都是常量

因此,基本上,至少在大多数情况下,您将使用
this.varName
通常在构造函数中使用,即用于构造对象的函数

声明全局变量或引用传递到方法中的对象时应该使用什么

全局变量几乎总是
var something=something
。当引用传递到函数中的对象时,只需使用点符号来引用其属性,如
passedObject.someProperty

我建议您在直接进入p5之前先学习Javascript,以下是我在开始学习Javascript时发现的一些有用的资源-


首先,p5不是一种语言,它是一个Javascript库,您使用的是Javascript编码,而不是p5

说到你的问题,如果你想使用一些函数作为数据类型,类似于java中的一个类,并且希望它的所有“实例”都有自己不同的变量,你可以使用
this
。如果它们只是以某种方式使用的变量,但不需要为每个实例指定,或者如果函数不是构造函数,也不作为数据类型使用,则只需使用
var

同样,javascript中没有类内容,为了“模拟”java类,您必须编写所谓的构造函数,但请注意构造函数不应返回任何内容。下面是java中
car
类的一个示例:

class car {
  int speed = ___;
  String model = ___;
  static int numOfWheels = ___;
}
这是javascript(构造函数)中的外观:

如果您声明一个变量而不使用
this
,则可以将它粗略地与java类中的静态变量进行比较,因为它在所有实例中都是常量

因此,基本上,至少在大多数情况下,您将使用
this.varName
通常在构造函数中使用,即用于构造对象的函数

声明全局变量或引用传递到方法中的对象时应该使用什么

全局变量几乎总是
var something=something
。当引用传递到函数中的对象时,只需使用点符号来引用其属性,如
passedObject.someProperty

我建议您在直接进入p5之前先学习Javascript,以下是我在开始学习Javascript时发现的一些有用的资源-