我制作了一个幻灯片,其中显示了一个随机的口号,但是当我在控制台中检查时,一些标语将重复两次甚至三次。这正是我想要避免的,但我如何在下面的代码中实现它。
setInterval("insertText()", 9000);
function insertText() {
var i = Math.floor(slogan.length * Math.random());
var text = document.getElementById("textinsidebox");
var sloganInfo = "<img src=" + slogan[i].image + " id='img_slogan'>" + "<br>" + slogan[i].text + "<br>" + slogan[i].person;
text.innerHTML = sloganInfo;
}
&#13;
答案 0 :(得分:0)
您可以使用函数的自有属性来存储最后一个值。
function insertText() {
var i;
do {
i = Math.floor(array.length * Math.random());
} while (i === insertText.i);
console.log(insertText.i, i);
insertText.i = i;
}
var array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
setInterval(insertText, 500);
&#13;
.as-console-wrapper { max-height: 100% !important; top: 0; }
&#13;