I am trying to generate a random string output from an array that's getting triggered at random times. The issue that I am facing now is, sometimes the same output comes out twice in a row, or even more than two times. I wanted the output to be different every single time it gets triggered. I don't want the next output to be the same as the very previous output. Please take a look at the code below. Thanks!
function randAnnouncement() {
  var lastIndex, ann = ["one", "two", "three"];
  let randomAnnouncement = ann[Math.floor(Math.random() * ann.length)];
  //speakTTS(randomAnnouncement);
  console.log(randomAnnouncement);
}
function init() {
  var myFunction = function() {
    randAnnouncement();
    var rand = Math.round(Math.random() * (5000 - 1000)) + 500; // generate new time (between x sec and x + 500"s)
    setTimeout(myFunction, rand);
  }
  myFunction();
}
init(); 
    