Bem eu criei um array que tem a paginas e quantidade do index que pode ser lida, onde gera aleatoriamente um valor que gera o resultado no meu caso links de paginas .
O meu outro array var valores = []; recebe o valor da variavel var rioky; que recebe o valor da comparação se o valor existir.
a função function verificar() comparar com um for isso, e se valores possuir o valor dentro de ryoky que recebe minha outra função então compara se existir nas duas a mesma ele imprime a mensagem, se não ele coloca dentro de valor = []; e ainda exibe a mensagem.
A logica está corretar mas não entendo por que não funciona.
<script>
// document.write('<a href="' + image + '" data-toggle="tab" onclick="" ></a>');
//Global use
var count = 0;
var valores = []; // vetor que guarda as paginas que já se foram
var rioky;
var leveluser = 1;
function azul(){
var linkht;
var pagenum = 4 ;
pages = new Array
pages[1] = "#home"
pages[2] = "#question_02"
pages[3] = "#question_03"
pages[4] = "#question_04"
//Aleatoriedade das paginas
var randomnumber = Math.random() ;
var rand1 = Math.round( (pagenum-1) * randomnumber) + 1;
linkht = pages[rand1];
return linkht;
}
rioky = azul();
function verificar(){
for (var i=0; i < parseInt(valores.length); i++){
if(String(rioky)== String(valores[count])){
//console.log("valor já utilizado" + valores[count]);
azul();
break;
}else {
//console.log("valor ainda não utilizado");
valores.append(ryoky);
return rioky;
}
count +=1;
}
console.log(rioky);
}
</script>
<script>
document.write(verificar());
</script>
Sinceramente, não deu pra entender direito o que é pra fazer.
Talvez se vc fizer alguns exemplos com valores fixos (como valores = ['a', 'b', etc]) só pra gente poder testar, pois no seu código não dá nem pra saber quais valores o array valores tem.
Mas aproveitando, não precisa fazer parseInt(valores.length). O length de um array sempre é um número, então pode usar apenas valores.length.
Então no caso o conceito é basicamente o seguinte, guardo os links em um array que fica dentro de uma função, dai pego o retorno da função.
ryouk = azul() ;
o gerador aleatório está funcionando já adentro da função. Meu problema é o seguinte agora o meu for da função de comparação que não funciona. Vejamos:
function verificar(){
for (var i=0; i < parseInt(valores.length); i++){
if(String(rioky)== String(valores[count])){
//console.log("valor já utilizado" + valores[count]);
azul();
break;
}else {
//console.log("valor ainda não utilizado");
valores.append(ryoky);
return rioky;
}
count +=1;
}
console.log(rioky);
}
O conceito desse código acima é pegar o valor do meu array e comparar se existe dentro de valores = []; se sim, então vai dizer que já tem. Se não vai adicionar o valor dentro do array valores=[];
funcionou , porém o meu array de cima coloca todos os valores de uma vez não teria como pegar apenas um já tentei mas não ta indo nehum metodo de escolha de apenas um tem alguma sugestão ?
//Global use
//var count = 0;
var valores = []; // vetor que guarda as paginas que já se foram
var rioky;
var leveluser = 1;
var linkht;
var pagenum = 4 ;
pages = new Array
pages[1] = “#home”
pages[2] = “#question_02”
pages[3] = “#question_03”
pages[4] = “#question_04”
function verificar(){
//Aleatoriedade das paginas
var randomnumber = Math.random() ;
var rand1 = Math.round( (pagenum-1) * randomnumber) + 1;
linkht = pages[rand1];
rioky = linkht;
if (valores.includes(rioky)) { // se rioky está no array valores
alert(“Existe”);
azul();
} else {
valores.push(rioky); // adiciona rioky no array
alert(“Não existe”);
}
De novo: não dá pra entender o que vc quer. Qual array de cima? O pages? O que é “colocar todos os valores de uma vez”? Colocar o que e onde (e quando)?
Então ele me retorna o valor de todas as condições do array, porém quero apenas um unico valor para ser atribuido a ryoku, mas está passando o valor de todos os items do array. Gerando varios alerts.
var valores = []; // vetor que guarda as paginas que já se foram
var rioky;
var leveluser = 1;
var pagenum = 4 ;
pages = new Array
pages[1] = "#home"
pages[2] = "#question_02"
pages[3] = "#question_03"
pages[4] = "#question_04"
function azul(){
//Aleatoriedade das paginas
var randomnumber = Math.random() ;
var rand1 = Math.round( (pagenum-1) * randomnumber) + 1;
rioky = pages[rand1];
}
function verificar(){
if (valores.includes(rioky)) { // se rioky está no array valores
alert("Existe");
azul();
} else {
valores.push(rioky); // adiciona rioky no array
alert("Não existe");
return rioky;
}
console.log(rioky);
}
<div class="tab-pane fade" id="question_04" role="tabpanel" aria-labelledby="contact-tab">
<h2>Escolha a imagem com um Ferro</h2>
<hr class="mt-2 mb-5">