NodeJS 如何使用setInterval来执行类函数?

qgelzfjb  于 2022-12-18  发布在  Node.js
关注(0)|答案(1)|浏览(168)

我有一个叫Warriors的类,它有一个叫randomizeWinner的函数,这个函数会从玩家的数组中删除一个随机元素,我想要发生的是在一个设定的时间间隔内一个接一个地删除元素。

class Warriors extends User {
  constructor(size) { super(size) }

  randomizeWinner() {
    const random = Math.floor(Math.random() * this.playersArray.length - 1)
    console.log(this.playersArray.splice(this.playersArray[random], 1))

  }

}

const w = new Warriors()

setInterval(w.randomizeWinner.bind(w), 3000)

所以正如你所看到的,底部的setInterval函数是我遇到麻烦的地方,我该如何使用setInterval在类中实现randomizeWinner函数

z9smfwbn

z9smfwbn1#

要在类中自动调用setInterval,只需在类构造函数中调用它。

constructor(size) { 
 super(size) 
 setInterval(this.randomizeWinner, 3000)
}

当创建对象const w = new Warriors()时,它将在 that 对象中被调用。

相关问题