mirror of
https://github.com/wassname/rl_2d_walker.js.git
synced 2026-09-09 11:33:20 +08:00
make class
This commit is contained in:
+26
-1
@@ -4,4 +4,29 @@ function deg2rad(deg) {
|
||||
return deg / 180 * Math.PI
|
||||
}
|
||||
|
||||
module.exports = {deg2rad, randf}
|
||||
|
||||
class MovingAverage{
|
||||
constructor(N) {
|
||||
this.N = N
|
||||
this.buffer = []
|
||||
}
|
||||
add(val) {
|
||||
if (this.buffer.length > this.N) this.buffer.splice(0, 1)
|
||||
this.buffer.push(val)
|
||||
}
|
||||
mean() {
|
||||
return mean(this.buffer)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function mean(array){
|
||||
if (array.length == 0)
|
||||
return null;
|
||||
var sum = array.reduce(function(a, b) { return a + b; });
|
||||
var avg = sum / array.length;
|
||||
return avg;
|
||||
}
|
||||
|
||||
|
||||
module.exports = {deg2rad, randf, MovingAverage, mean}
|
||||
|
||||
Reference in New Issue
Block a user