Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

149
Vistas
Devoluciones de valores incorrectos

Yo uso esta función:

 function search (){ v = [[2.0], [3.0], [4.0], [5.0]] if(v.indexOf(2.0) != -1){ Logger.log ('if') }else{ Logger.log('else') } }

edición

Mi verdadera necesidad está en los valores de palabras como esta. Me respondieron sobre números, así que no cambié y solo agregué.

 function search (){ v = [["One"], ["two"], ["three"], ["four"]] if(v.indexOf("One") != -1){ Logger.log ('if') }else{ Logger.log('else') } }

Y en lugar de "si" vuelve a mí, "si no" vuelve a mí. Me disculpo por el inglés roto.

about 4 years ago · Santiago Gelvez
3 Respuestas
Responde la pregunta

0

Su matriz de entrada es una matriz multi / two . Está buscando 2.0 que en realidad está incrustado dentro de otra matriz más pequeña. Intente cambiar la función a continuación.

 function search() { v = [ ["One"], ["two"], ["three"], ["four"] ] if (v.findIndex(e => e[0] === 'One') != -1) { console.log('if') } else { console.log('else') } } search();

about 4 years ago · Santiago Gelvez Denunciar

0

¿Quiso escribir v = [2.0, 3.0, 4.0, 5.0]; ?

Porque eso imprimirá 'if' . La razón es que en su ejemplo, cada elemento de la matriz v es una matriz propia.

Si realmente desea que sea una matriz de matrices, entonces para que funcione, puede hacer esto en la instrucción if :

if ( v.flat().includes(2.0) )

  1. flat lo convierte de una matriz de matrices que contienen un número, a una matriz de números.
  2. includes es un método más agradable para verificar si la matriz contiene un valor; no es necesario verificar el índice :)
about 4 years ago · Santiago Gelvez Denunciar

0

array.indexOf() no es aplicable para matrices anidadas. Si su matriz es de tipos primitivos, entonces está funcionando, pero si la matriz es de tipos no primitivos, a través de indexOf no puede hacer coincidir el valor.

Use esto instalado de su función:

 v.findIndex(ele => [...new Set(ele)][0] == 2.0) >=0 ? 'if' : 'else'

ingrese la descripción de la imagen aquí

about 4 years ago · Santiago Gelvez Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda