Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

304
Visualizações
problema con la asignación de matriz de javascript, ¿cómo puede funcionar "== verdadero: falso" en este código?

Estoy estudiando javascript y aquí está mi problema.

Me dieron la variable llamada "couldBeAnything" que puede ser cualquier tipo de datos. Y otra variable que nombró resultado, también. Debo verificar si la variable dada es una matriz y luego asignar verdadero al resultado. Otros casos entonces falso para dar como resultado. Aquí está el código.

 function checkIsArray(couldBeAnything) { var result = true ? Array.isArray(couldBeAnything) == true : false return result; }

Perdón por mi sorpresa, porque este código es de mi superior, por lo que no puedo entenderlo claramente, solo entiendo si es así, ¿podría explicarme este código? ¿Cómo funciona la dosis? Muchísimas gracias.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Esto funciona porque está realizando varias operaciones sin sentido que complican su lectura, pero en realidad solo usa Array.isArray .

 Array.isArray(couldBeAnything) == true

Si se pasa una matriz, Array.isArray es verdadero, verdadero == verdadero es verdadero.

Entonces, lo que obtienes es, si se pasa una matriz:

 var result = true ? true : false;

Cual es verdad.

Y para una no matriz:

 var result = true ? false : false;

Lo cual es falso.

Con suerte, esto es el resultado de varias refactorizaciones o fusiones perezosas, porque escribir esto a propósito es bastante tonto, como han dicho otros.

about 4 years ago · Juan Pablo Isaza Relatório

0

Creo que no has estado expuesto a operadores ternarios.

 let x=true let result if(x){ result="Thats true" } else{ result="No thats false" } console.log(result)

Lo anterior se puede escribir como

 let x=true let result=x?"That's true":"No that's false" console.log(result)

La lógica es que si la expresión anterior a ? es cierto entonces el código después de ? se ejecutará y, si es falso, se ejecutará el código después de : .

Eso es simple, ¿verdad?

En tu caso el código está mal. Debería ser así:

 function checkIsArray(couldBeAnything) { var result = Array.isArray(couldBeAnything) ? true : false return result; }

Pero no hay necesidad de condiciones ternarias aquí. Puedes usar esto directamente

 function checkIsArray(couldBeAnything) { return Array.isArray(couldBeAnything) }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda