Javascript 创建新原型函数与函数引用

Javascript 创建新原型函数与函数引用,javascript,optimization,game-engine,Javascript,Optimization,Game Engine,Javascript提供了很多关于如何做非常相似的事情的选项,所以有时很难决定什么是最好的 我有一些代码,可以将函数作为全局对象创建一次,然后引用它们,或者将函数添加到我创建的实例的原型中 因此,我想知道什么是更好的做法,并有一个较低的内存开销我正在制作一个游戏引擎,所以我不能让垃圾收集器经常暂停,并尽量避免新的对象 使用对全局定义的函数的引用实际上是我存储全局函数的对象的一部分,以避免污染窗口实际上更糟糕的是,我担心向原型添加函数意味着我用new实例化的每个对象都在创建新函数,而我可以只引用一

Javascript提供了很多关于如何做非常相似的事情的选项,所以有时很难决定什么是最好的

我有一些代码,可以将函数作为全局对象创建一次,然后引用它们,或者将函数添加到我创建的实例的原型中

因此,我想知道什么是更好的做法,并有一个较低的内存开销我正在制作一个游戏引擎,所以我不能让垃圾收集器经常暂停,并尽量避免新的对象


使用对全局定义的函数的引用实际上是我存储全局函数的对象的一部分,以避免污染窗口实际上更糟糕的是,我担心向原型添加函数意味着我用new实例化的每个对象都在创建新函数,而我可以只引用一次函数。

No,向构造函数的原型添加方法将为所有实例共享相同的函数。如果在构造函数中添加方法,则情况会有所不同,这将为每个实例创建不同的特权方法。根据您的情况,使用这些本地方法的开销可以忽略不计,甚至可能小于原型链上查找的开销。