O que este símbolo '?' representa ? O que ele efetivamente significa?
O que este símbolo '?' representa ? O que ele efetivamente significa?
Boa tarde, Edson! Como vai?
Vc se refere ao trecho de código abaixo?
return lacunas.length
? !lacunas.some(function(lacuna) {
return lacuna == '';
})
: false;
Se sim, o ?
junto com o :
formam o operador de if ternário.
Funciona assim: condição ? retorno caso verdadeiro : retorno caso falso
.
Exemplo prático:
let minhaVariavel = 0;
minhaVariavel =
minhaVariavel == 0
? 1
: 2;
Nesse caso, eu estou verificando se a variável minhaVariavel
tem o valor 0. Em caso positivo, atribuo 1 à minhaVariavel
e 2 caso contrário. Portanto, no final, minhaVariavel
valerá 1.
Pegou a ideia? Qualquer coisa é só falar!
Grande abraço e bons estudos, meu aluno!
Entendi, cara.
Mas então qual seria a condição neste caso? Porque ,pelo que entendo, a sentença "lacunas.length" há de retornar apenas o valor do comprimento da array, não um valor booleano true/false.
Opa, Edson!
No JavaScript um valor numérico maior que zero é considerado true
e igual a zero é considerado false
. É o que chamamos de falsy value!
Para saber mais: https://developer.mozilla.org/en-US/docs/Glossary/Falsy
Grande abraço e bons estudos, meu aluno!