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

求助:如何从数组中返回随机字符串?

求助:如何从数组中返回随机字符串?

嘿,我来帮你捋捋这个问题~你的代码其实已经做了最关键的两步:定义了包含选项的数组,也算出了随机索引,但差了最核心的一步——把选中的元素返回出去,而且还有个小细节可以优化,让代码更灵活。

你看,现在你的函数getComputerChoice里没有return语句,所以调用它的时候自然会输出undefined。咱们来改一改:

首先,把硬写的3换成数组的length属性,这样以后要是你想给数组加新元素(比如加个'lizard'或者'spock'),不用手动改这个数字,代码自己会适配数组长度。然后用你算出的随机索引去数组里取对应的元素,最后return这个元素就行。

修改后的代码是这样的:

function getComputerChoice() {
  // 变量名用小驼峰更符合JavaScript的命名规范哦
  const myStrings = ['rock', 'paper', 'scissors'];
  // 用数组长度代替固定的3,扩展性更好
  const randomIndex = Math.floor(Math.random() * myStrings.length);
  // 返回选中的随机字符串
  return myStrings[randomIndex];
}

console.log(getComputerChoice());

简单解释下:Math.random()生成0到1之间的随机小数,乘以数组长度后得到0到数组长度(不包含)的数,Math.floor()把这个数向下取整,就得到了0、1、2这些合法的数组索引,最后用索引取出数组里的元素返回,调用函数就能拿到随机的字符串啦~

备注:内容来源于stack exchange,提问作者Dafe Victor

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 09:12:59