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

211
Vistas
Return type is one of the value from array

I have function which takes an array in an object as parameter. It calculates and return one of the value from that array. Is there a way to document the return type from one of the values from array dynamically.

Say

function random(params) {
  // calculate
  int random = 2; // this will change
  return params.values[random];
}

random({
  prop1: 'lorem ipsum',
  prop2: 3.444,
  values: [ 'value1', 'value2', 'value3', 'value4' ]
})

So random jsdoc should be dynamic but should look something like

/**
 * Some radom generator.
 * @param {object} props - Function parameters.
 * @param {string} props.prop1 - Some prop1.
 * @param {number} props.prop1 - Some prop2.
 * @param {string[]} props.values - List of values to pick.
 * @returns {('value1'|'value2'|'value3'|'value4')}
 */

The last return should somehow be dynamic

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

The following would do the trick:

/**
 * Some random generator.
 * @template {string} T
 * @param {object} params - Function parameters.
 * @param {string} params.prop1 - Some prop1.
 * @param {number} params.prop2 - Some prop2.
 * @param {T[]} params.values - List of values to pick.
 * @returns {T}
 */

enter image description here

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