• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

177
Vistas
Estoy tratando de resolver un desafío de jshero.net

Estoy tratando de resolver un desafío de jshero.net

Escriba una función add que agregue un elemento al final de una matriz. Sin embargo, el elemento solo debe agregarse si aún no está en la matriz.

Ejemplo: add([1, 2], 3) debería devolver [1, 2, 3] y add([1, 2], 2) debería devolver [1, 2] .

¿Por qué no funcionó este código?

 function add(Sarray, nosarray) { if (Sarray.indexOf(nosarray) > -1) { return Sarray; } else { return Sarray.push(nosarray); }

pero devuelve el número 2 . No puedo entenderlo si .push(). El nuevo elemento se pasa como parámetro y se agrega al final de la matriz. ¿Por qué en mi código no funcionó?

about 3 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Lea la referencia del método Array.prototype.push .

El método agrega un elemento al final de la matriz y devuelve la longitud de una matriz. Debe devolver la matriz en sí, no el resultado del método de inserción.

 Sarray.push(nosarray); return Sarray;
about 3 years ago · Juan Pablo Isaza Denunciar

0

Este es tu código:

 function add (Sarray, nosarray) { if (Sarray.indexOf(nosarray) > -1) { return Sarray } else { return Sarray.push(nosarray) } }

La línea return Sarray.push(nosarray) agregará el nosarray como elemento a $array. Luego, devolverá la longitud de la matriz . Entonces, si asigna el resultado de la función a una variable, la variable será igual a 3 en su caso. Si desea que la función devuelva la matriz completa, solo tendría que ejecutar $array.push(nosarray) y luego devolver $array después.

about 3 years ago · Juan Pablo Isaza 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda