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

99
Vistas
¿Puedo especificar el tipo de datos que se devolverá en una función de JavaScript?

¿Hay alguna manera de crear una función que solo devuelva cadenas? Por contexto, estaba tratando de crear la función adjunta como captura de pantalla, con el objetivo de concatenar dos cadenas y devolver otra cadena. Sin embargo, la función también funcionó con números, ya que los agregó. En algunos casos, solo me gustaría que la función funcione en un tipo de datos en particular. es posible?

captura de pantalla aquí

 function concatenate(a,b) { return (a+b); }
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Así que o los conviertes en los tipos que quieras

 function example (a, b) { return a.toString() + b.toString(); } console.log(example("foo", "bar")); console.log(example(1, 2));

O haces la validación de los tipos.

 function example (a, b) { if (typeof a !== "string" || typeof b !== "string" ) { throw new Error("Strings expected"); } return a + b; } console.log(example("foo", "bar")); console.log(example(1, 2));

Si realmente te importa String vs String

 if ( !(typeof a === 'string' || a instanceof String) || !(typeof b === 'string' || b instanceof String)) { throw new Error("Strings expected"); }
about 4 years ago · Juan Pablo Isaza Denunciar

0

La función genérica se puede crear aceptando el tipo y puede devolver la función haciendo todas las validaciones que se pueden usar para realizar la acción.

 function GenericConcat(typeA,typeB) { return (a,b) => { if (typeof a == typeA && typeof b == typeB ) { return a + b; } throw new Error("Parameter type expected: "+ typeA +"-"+ typeB); } }
 stringConcate = GenericConcat("string","string"); stringConcate("a","b"); //ab stringConcate("a",1) //Error: Parameter type expected: string-string numberConcate = GenericConcat("number","number"); numberConcate(1,2); //3 numberConcate("a",1); //Error: Parameter type expected: number-number
 GenericConcat("string","string")("A","B"); GenericConcat("number","number")(1,2);
about 4 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 Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda