Entonces tengo esta función que tiene el siguiente JSDoc
/** * Initializes a new game, this means creating a new map and centering on the * playerbase * * @param {object} param1 * @param {number} param1.seed * */Actualmente tengo esto como la definición de función.
initNewGame({ seed }) {} Pero me gustaría tener un valor predeterminado para la semilla, que es randomInt(0, 100000) . Cómo puedo conseguir esto.
Podrías hacer lo siguiente:
function initNewGame(params, seed = randomInt(0, 100000)) { //body of the function }esto se puede llamar así:
let params = {} let seed = 4124; initNewGame(params); //or initNewGame(params, seed);Desafortunadamente, esto significa que el JSDoc debería cambiar en consecuencia, ya que la semilla ya no es una propiedad de los accesorios.
EDITAR: otra cosa que puedes hacer es:
function initNewGame(params = {anyvalue: "hello", seed: getRandomInt(1000)}) { console.log(params.seed) } initNewGame(); //or initNewGame({anyvalue: "hello in call", seed: 1000});function initNewGame({seed} = {}) { seed = seed !== undefined ? seed : randomInt(0, 100000); // the rest }