CpuHigherLower/js/cpuRepository.js

35 lines
882 B
JavaScript
Raw Normal View History

2023-04-19 21:54:42 +02:00
export class CpuRepository {
2023-04-19 19:57:22 +02:00
#cpuList;
#currentCPU;
#nextCPU;
async init() {
const fetchResult = await fetch("./js/data.json");
this.#cpuList = await fetchResult.json();
this.#currentCPU = this.getRandomCpu();
this.#nextCPU = this.getRandomCpu();
}
get currentCpu() {
return this.#currentCpu;
}
get nextCpu() {
return this.#nextCpu;
}
getRandomCpu() {
let randomIndex = this.getRandomInt(0, this.#cpuList.length);
this.#cpuList[randomIndex]["name"] = this.#cpuList[randomIndex]["name"].split('@')[0];
return this.#cpuList[randomIndex];
}
getRandomInt(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min) + min); // The maximum is exclusive and the minimum is inclusive
}
}