Bad FizzBuzz

https://www.reddit.com/r/badcode/comments/b5oqij/bad_code_coding_challenge_7_fizz_buzz/

by kmk1018

JavaScript

function contains(arr, ele) {
	for (var i = 0; i < arr.length; i++) {
  	if (arr[i] === ele) {
    	return true;
    }
  }
  
  return false;
}

function isFizz(num) {
	var threeMultiple = 0;
  
  while (threeMultiple < 100) {
  	threeMultiple += 3;
    if (threeMultiple === num) {
    	return true;
    }
  }
	
  return false;
}

function isBuzz(num) {
	var numStringArray = num.toString().split('');
  return numStringArray[ numStringArray.length - 1 ] === '0' || numStringArray[ numStringArray.length - 1 ] === '5';
}

function isFizzBuzz(num) {
	return isFizz(num) && isBuzz(num);
}

function sleepSortedOutput(num, status) {
	setTimeout(function (number, statusString) {
    console.log(number + ': ' + statusString);
  }, 50 * num, num, status);
}

var usedNumbers = [];

while (usedNumbers.length < 100) {
	var candidateNumber = Math.floor(Math.random() * 100) + 1;
  if (contains(usedNumbers, candidateNumber)) {
  	continue;
  }
  
  usedNumbers.push(candidateNumber);
  
  if (isFizzBuzz(candidateNumber)) {
  	sleepSortedOutput(candidateNumber, 'FizzBuzz');
  } else if (isFizz(candidateNumber)) {
  	sleepSortedOutput(candidateNumber, 'Fizz');
  } else if (isBuzz(candidateNumber)) {
  	sleepSortedOutput(candidateNumber, 'Buzz');
  } else {
  	sleepSortedOutput(candidateNumber, '');
  }
}