scoreboard.ts 750 B

12345678910111213141516171819202122232425
  1. /// <reference path="result.ts" />
  2. class Scoreboard {
  3. private results: Result[] = [];
  4. addResult(newResult: Result): void {
  5. this.results.push(newResult);
  6. }
  7. updateScoreboard(): void {
  8. let output: string = '<h2>Scoreboard</h2>';
  9. // Loop over results and create HTML for the scoreboard.
  10. for (let index = 0; index < this.results.length; index++) {
  11. let result: Result = this.results[index];
  12. output += '<h4>';
  13. output += result.playerName + ': ' + result.score + '/' + result.problemCount + ' for ' + result.factor;
  14. output += '</h4>';
  15. }
  16. // Add the updated scoreboard to the page.
  17. let scoresElement: HTMLElement = document.getElementById('scores')!;
  18. scoresElement.innerHTML = output;
  19. }
  20. }