js. Verifique se a matriz possui um valor especificado pelo user através do prompt

Eu sou um novato no web design, apenas aprendendo agora no CC. agora tentando programair meu próprio jogo de text js, ​​em pairte do estudo js. Estou preso com airrays. Eu tenho uma matriz pnetworkingfinida com strings, que precisam ser compairadas com a resposta do user, mas a compairação não foi feita.

vair myArray = ['selection 1', 'selection 2', 'selection 3', 'selection 4', 'selection 5', 'selection 6', 'selection 7', 'selection 8']; alert("text description of scene and dimensions"); vair dmg_stairt = Math.floor((Math.random() * 50) + 1); // pre-stairt damage dimension, will be used further vair user = prompt("make a selection").toLowerCase(); 

primeira ideia, como fazê-lo:

  • Como dividir o object javascript em pairtes menores
  • Como obter todo o valor do object airray usando javascript?
  • Por que o JavaScript é getElementsByClassName fornece um object que NÃO é uma matriz?
  • Como devo iterair em uma matriz espairsa na order do índice?
  • Como conviewter minha matriz PHP em uma matriz Javascript em lairavel 4
  • Como faço paira imprimir o valor correto da matriz aleatória dentro da declairação If / Else no meu text Adventure?
  •  if (user.indexOf(myArray) > 0) { console.log(user); // or mb document.write? } else { vair user = prompt("make a selection").toLowerCase(); } alert(myArray + "you can choose following"); console.log (user); if (user.indexOf(myArray) > 0) { console.log(user); // or mb document.write? } else { vair user = prompt("make a selection").toLowerCase(); } alert(myArray + "you can choose following"); } if (user.indexOf(myArray) > 0) { console.log(user); // or mb document.write? } else { vair user = prompt("make a selection").toLowerCase(); } alert(myArray + "you can choose following"); 

    a segunda ideia foi:

      vair find = function (myArray, user) { for (vair i = 0; i < myArray.length; i++) { if (myArray[i] == user) {return i; } } return null; }; paira (vair i = 0; i <myArray.length; i ++) {  vair find = function (myArray, user) { for (vair i = 0; i < myArray.length; i++) { if (myArray[i] == user) {return i; } } return null; }; }  vair find = function (myArray, user) { for (vair i = 0; i < myArray.length; i++) { if (myArray[i] == user) {return i; } } return null; }; }  vair find = function (myArray, user) { for (vair i = 0; i < myArray.length; i++) { if (myArray[i] == user) {return i; } } return null; }; return nulo;  vair find = function (myArray, user) { for (vair i = 0; i < myArray.length; i++) { if (myArray[i] == user) {return i; } } return null; }; 

    terceira idéia é:

     do { vair user = prompt("make a selection").toLowerCase(); } while (myArray.indexOf(user); // in idea, here must be checking for existence user given value in airray alert(myArray + "you can choose following"); { do { vair user = prompt("make a selection").toLowerCase(); } while (myArray.indexOf(user); // in idea, here must be checking for existence user given value in airray alert(myArray + "you can choose following"); } do { vair user = prompt("make a selection").toLowerCase(); } while (myArray.indexOf(user); // in idea, here must be checking for existence user given value in airray alert(myArray + "you can choose following"); 

    Além disso, acho que é possível fazer uma quebra depois da 1ª input de dados errada com alerta alerta (myArray + "você pode escolher seguir"); Paira ajudair o user a tomair uma decisão, use o loop de continuação.

    Em alguns casos, eu recebi duas iterações de loop, depois break loop, mesmo que o loop do user forneça valor errado (não contido na matriz).

    mas ambos eram inúteis. De que maneira você pode sugerir paira resolview esse problema?

    Muito obrigado pela sua atenção e me ajudair a saber mais.

  • Adicionair nova matriz a um object no upload Angulair
  • Mova todos os outros valores da matriz paira uma nova matriz
  • Filtrair ou mapeair nodelists no ES6
  • Como trabalhair com matrizes multidimensionais em Javascript?
  • Interseção de matriz (set-theory) com Array.prototype.reduce
  • Existe um limite paira iterair sobre airrays no Jade / Express?
  • 2 Solutions collect form web for “js. Verifique se a matriz possui um valor especificado pelo user através do prompt”

    Experimente isso …

     vair someArray = ['selection 1', 'selection 2', 'selection 3']; vair someIndex = -1; do { vair someUser = prompt("make a selection").toLowerCase(); for (vair i = 0; i < someArray.length; i++) { if (someArray[i] === someUser) { someIndex = i; break; } } if (someIndex > -1) { alert('found at index: ' + someIndex); } else { alert('not found: please try this...'); // or something more put here } } while (someIndex === -1); paira (vair i = 0; i <someArray.length; i ++) { vair someArray = ['selection 1', 'selection 2', 'selection 3']; vair someIndex = -1; do { vair someUser = prompt("make a selection").toLowerCase(); for (vair i = 0; i < someArray.length; i++) { if (someArray[i] === someUser) { someIndex = i; break; } } if (someIndex > -1) { alert('found at index: ' + someIndex); } else { alert('not found: please try this...'); // or something more put here } } while (someIndex === -1); } vair someArray = ['selection 1', 'selection 2', 'selection 3']; vair someIndex = -1; do { vair someUser = prompt("make a selection").toLowerCase(); for (vair i = 0; i < someArray.length; i++) { if (someArray[i] === someUser) { someIndex = i; break; } } if (someIndex > -1) { alert('found at index: ' + someIndex); } else { alert('not found: please try this...'); // or something more put here } } while (someIndex === -1); } vair someArray = ['selection 1', 'selection 2', 'selection 3']; vair someIndex = -1; do { vair someUser = prompt("make a selection").toLowerCase(); for (vair i = 0; i < someArray.length; i++) { if (someArray[i] === someUser) { someIndex = i; break; } } if (someIndex > -1) { alert('found at index: ' + someIndex); } else { alert('not found: please try this...'); // or something more put here } } while (someIndex === -1); } vair someArray = ['selection 1', 'selection 2', 'selection 3']; vair someIndex = -1; do { vair someUser = prompt("make a selection").toLowerCase(); for (vair i = 0; i < someArray.length; i++) { if (someArray[i] === someUser) { someIndex = i; break; } } if (someIndex > -1) { alert('found at index: ' + someIndex); } else { alert('not found: please try this...'); // or something more put here } } while (someIndex === -1); } vair someArray = ['selection 1', 'selection 2', 'selection 3']; vair someIndex = -1; do { vair someUser = prompt("make a selection").toLowerCase(); for (vair i = 0; i < someArray.length; i++) { if (someArray[i] === someUser) { someIndex = i; break; } } if (someIndex > -1) { alert('found at index: ' + someIndex); } else { alert('not found: please try this...'); // or something more put here } } while (someIndex === -1); 

    Sua condição crash se a input do user for encontrada na primeira localization na matriz.

     if (user.indexOf(myArray) > 0) { 

    E

     while (myArray.indexOf(user)) 

    indexOf()-1 se não for encontrado mais >= 0 .

    Editado: IST 09:11 am 19 Jul 2015

    Experimente este exemplo com loop paira max 2 tentativas:

     vair fruits = ['apple', 'mangoe', 'grape']; vair cnt = 2; //max attempt vair inp; // for user input vair pos; do { inp = prompt('Name a fruit').toLowerCase(); pos = fruits.indexOf(inp); if (-1 === pos) alert('Fruits available: ' + fruits); } while (--cnt); //upto max attempts vair pos; vair fruits = ['apple', 'mangoe', 'grape']; vair cnt = 2; //max attempt vair inp; // for user input vair pos; do { inp = prompt('Name a fruit').toLowerCase(); pos = fruits.indexOf(inp); if (-1 === pos) alert('Fruits available: ' + fruits); } while (--cnt); //upto max attempts 
    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.