Javascript 是否可以将基元属性作为引用存储在类中?

Javascript 是否可以将基元属性作为引用存储在类中?,javascript,class,oop,Javascript,Class,Oop,我正在运行一个模拟,它有一个“timePerTick”整数变量。用户可以设置此变量以加速或减慢模拟 模拟本身由几个类处理,所有类都使用timePerTick变量 我在向类传递timePerTick时遇到了一些麻烦,因为如果我传递一个整数,它将作为值传递,而不是引用。现在,我正在传递一个函数,该函数返回一个引用,这是可行的,但它不是很漂亮 是否有一些我不知道的模式可以处理这个问题?是否有任何理由需要通过引用传递它?如果它是用户提供的值,那么听起来您的函数不会修改它,所以它不会更改 如果您确实想要通

我正在运行一个模拟,它有一个“timePerTick”整数变量。用户可以设置此变量以加速或减慢模拟

模拟本身由几个类处理,所有类都使用timePerTick变量

我在向类传递timePerTick时遇到了一些麻烦,因为如果我传递一个整数,它将作为值传递,而不是引用。现在,我正在传递一个函数,该函数返回一个引用,这是可行的,但它不是很漂亮


是否有一些我不知道的模式可以处理这个问题?

是否有任何理由需要通过引用传递它?如果它是用户提供的值,那么听起来您的函数不会修改它,所以它不会更改

如果您确实想要通过引用传递它的等效性,您可以:

  • 在每个刻度处将值传递给类,如
    myClass.onTick(timePerTick)
  • 传递一个对象而不是一个数字。 js中的对象是通过引用传递的
    myClass.onTick(globalState)
    ,其中globalState是一个对象或包含变量的类

  • 传递具有timePerTick值的对象。对象是通过引用传递的。

    您始终可以使用对象(如一个1长数组)包装您的原语,并读取/写入
    timePerTick[0]
    ,尽管它看起来有点粗糙。一个经典的构造是有一个可以是类实例或对象的配置,但如果我们有一些简化的代码,它会更清晰