Моя программа в js. То, что я хочу сделать, состоит в том, чтобы каждый раз, когда разгладилась кнопка с функцией было включено это, но проблема состоит в том, что результат повторяется продолженный и причиняющий беспокойство.
var Loot = ["manzana", "pera","melon","sandia","limón","durazno"];
var Hrandom = Loot[Math.floor(Loot.length * Math.random())];
document.getElementById("demo").innerHTML =""+Hrandom;
я все еще noob, но бросаю ему желания, когда я могу. Я, что ему не хватает ago.... чего-то, мне говорят, что ему не хватает IF, но не где. Или в возможно loop.
Только я хочу, чтобы вышел яблоко, лимон... и т.д... не лимон, лимон, яблоко... только я хочу, чтобы не повторился два в 3 раза продолженные.
Я не понял очень хорошо того, что ты хочешь сделать, но это добавляет элементы твоей договоренности N разы, не повторяя их.
<p id="demo"></p>
for(var i = 0; i < 10; i++){
var Loot = ["manzana", "pera","melon","sandia","limón","durazno"];
var Hrandom = Loot[Math.floor(Loot.length * Math.random())];
if(document.getElementById("demo").innerHTML.indexOf(Hrandom) === -1){
document.getElementById("demo").innerHTML +=" "+Hrandom+" ";
}
}
Если ты не хочешь, чтобы он повторился, просто войди в цикл до тех пор, пока это не будет той же стоимостью, которую тебе дала Гєltima, раз.
Немного как:
var Loot = ["manzana", "pera","melon","sandia","limón","durazno"];
do
var Hrandom = Loot[Math.floor(Loot.length * Math.random())];
while (""+Hrandom == document.getElementById("demo").innerHTML)
document.getElementById("demo").innerHTML =""+Hrandom;
var Loot = ["manzana", "pera","melon","sandia","limón","durazno"];
var Hrandom;
while(document.getElementById("demo").innerHTML == ""+Hrandom){
var Hrandom = Loot[Math.floor(Loot.length * Math.random())];
}
document.getElementById("demo").innerHTML =""+Hrandom;
Уже никогда не будут повторять
while
, подтверждать и # 225; с переменной Hrandom
, что в и # 250; n не est и # 225; определенная. undefined
быть и # 225; результат
– Dev. Joel
12.10.2016, 21:57
Я оставляю вам aquГ - другой пример с одной funciГіn, чтобы обнаруживать возможно дубликаты в array.
var Loot = ['manzana', 'pera', 'melon', 'sandia', 'limón', 'durazno'];
var Hrandom = [];
for (var i = 0; i < Loot.length; i++) {
Hrandom.push(Loot[Math.floor(Loot.length * Math.random())]);
}
function detectarDuplicado(item){
var noDuplicado = [];
item.forEach(function(item) {
if (noDuplicado.indexOf(item) === -1) {
noDuplicado.push(item);
}
});
return noDuplicado.join(', ');
}
document.getElementById('demo').textContent = detectarDuplicado(Hrandom);
<p id="demo"></p>
Если я понимаю хорошо, которое ты имеешь в виду, это был бы код функции, которая, после того, как работал бы, он выбирает случайным образом элемент договоренности, и напиши эту стоимость в контенте html этикетки с id demo:
var Loot = ["manzana", "pera","melon","sandia","limón","durazno"];
var miFuncion = function(){
var Hrandom = Loot[Math.floor(Loot.length * Math.random())];
document.getElementById("demo").innerHTML = Hrandom;
}
Сейчас, чтобы кликать, я представляю, что у тебя будет кнопка в этикетке html:
<button id="btnrandom" type="button">aleatorio</button>
ты можешь добавлять к вышеупомянутой кнопке признак onclick для того, чтобы он выполнил твою функцию, кликнув на:
<button id="btnrandom" type="button" onclick="miFuncion();">aleatorio</button>
или из-за javascript:
document.getElementById("btnrandom").addEventListener("click",miFuncion);
и я схватил каждый раз, когда нажимают на кнопку стоимость в div с id = "demo" он изменится.
Я оставляю ссылку Fiddle с кодом функционируя: https://jsfiddle.net / 5fr29ju0 /
click
– Dev. Joel
12.10.2016, 23:05