Freecodecamp: Selecionando entre muitas opções com instruções de switch-incorreta

Criado em 24 fev. 2016  ·  3Comentários  ·  Fonte: freeCodeCamp/freeCodeCamp

Modelo de problema do FreeCodeCamp

Para usar este modelo:

  • Preencha o que puder
  • Apague o que não preencher

NOTA: PROBLEMAS NÃO SÃO PARA AJUDA DE CÓDIGO - Peça ajuda em https://gitter.im/FreeCodeCamp/Help

descrição do problema

  • Acredito que encontrei um problema com a descrição para testar valores de caso. O módulo afirma que "os valores de caso são testados com um operador de igualdade estrito (===). Acho que isso pode estar incorreto. Meus motivos são os seguintes:

1.) Ao usar operadores de igualdade estrita no console Javascript, o console os sinaliza e fornece um erro vermelho X. O código não será executado usando um operador de igualdade estrita.
2.) Os exemplos do W3C http://www.w3schools.com/js/js_switch.asp mostram um operador de atribuição sendo usado, que meu código abaixo também usa e passa no teste.

Ainda estou aprendendo, mas espero que isso ajude e as correções possam ser feitas. Obrigado!

Informações do navegador

  • Google Chrome, versão 48.0.2564.109 (64 bits)
    *OSX

    Seu código

function myTest(val) {
  var answer = "";
  // Only change code below this line
  switch (val) {
    case 1: 
      answer = "alpha";
      break;
    case 2:
      answer = "beta";
      break;
    case 3:
      answer = "gamma";
      break;
    case 4:
      answer = "delta";
      break;
  }
// Only change code above this line  
  return answer;  
}

// Change this value to test
myTest(1);

Captura de tela

screen shot 2016-02-23 at 6 42 27 pm

Comentários muito úteis

os valores case são testados com um operador de igualdade estrito (===)

significa que

 switch (val) {
    case 1: 

é equivalente a if (val === 1) não que tudo dentro do seu caso precise ser estrita igualdade.

Visite o Chat de Ajuda se precisar de mais esclarecimentos. Obrigado e boa codificação!

Todos 3 comentários

os valores case são testados com um operador de igualdade estrito (===)

significa que

 switch (val) {
    case 1: 

é equivalente a if (val === 1) não que tudo dentro do seu caso precise ser estrita igualdade.

Visite o Chat de Ajuda se precisar de mais esclarecimentos. Obrigado e boa codificação!

Incrível obrigado!

Enviado do meu iPhone

Em 24 de fevereiro de 2016, às 15h01, Logan Tegman [email protected] escreveu:

os valores case são testados com um operador de igualdade estrito (===)

significa que

interruptor (val) {
caso 1:
é equivalente a if (val === 1) não que tudo dentro do seu caso precise ser estrita igualdade.

Visite o Chat de Ajuda se precisar de mais esclarecimentos. Obrigado e boa codificação!


Responda a este e-mail diretamente ou visualize-o no GitHub.

Eu olhei para o código acima, mas não consegui fazer o código funcionar com igualdade estrita, mas este é o meu código, se as pessoas tiverem dúvidas ou acharem que está errado, deixe-me um comentário.
`
function caseInSwitch(val) {
var resposta = "";
// Apenas altera o código abaixo desta linha
interruptor (val) {
caso 1:
resposta = "alfa";
pausa;
caso 2:
resposta = "beta";
pausa;
caso 3:
resposta = "gama";
pausa;
caso 4:
resposta = "delta";
pausa;
}

// Apenas altera o código acima desta linha
retorno resposta;
}

// Altere este valor para testar
caseInSwitch(2);

`

Esta página foi útil?
0 / 5 - 0 avaliações