You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为采用对象解构的ES6函数参数seed设置randomInt生成的默认值

实现方案

你可以直接在参数解构阶段设置默认值,同时兼容不传整个参数对象的场景,完整代码如下:

/**
 * Initializes a new game, this means creating a new map and centering on the
 * playerbase
 *
 * @param {object} [param1={}] - 配置项对象(可选)
 * @param {number} [param1.seed=randomInt(0, 100000)] - 地图生成种子,默认取0到100000之间的随机整数
 * */
function initNewGame({ seed = randomInt(0, 100000) } = {}) {
  // 原有函数逻辑
}

说明:

  • 解构赋值时给seed设置默认值randomInt(0, 100000),只要调用时没有主动传seed参数,就会自动执行randomInt生成随机值作为默认值
  • 外层的= {}是为了兼容initNewGame()不传任何参数的调用场景,如果没有这个默认空对象,不传参数时解构会直接抛出错误
  • JSDoc里给param1和param1.seed都加了[]标记为可选参数,同时补充了默认值说明,符合JSDoc规范

内容的提问来源于stack exchange,提问作者Daan Breur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 02:09:03