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

编写JS函数实现返回22及求数组中11的倍数的最小值

JavaScript函数实现答疑

需求1:编写返回数值22的函数

直接在函数体内返回固定值即可,实现如下:

function getTwentyTwo() {
  return 22;
}

需求2:编写返回数组中所有11的倍数的最小整数的函数

现有代码存在的问题

  • 多余的范围过滤逻辑:代码中x / 11 >= 0 && x / 11 < 1000的判断没有需求依据,会把负数的11的倍数(比如示例数组中的-22)、数值大于等于11000的11的倍数直接过滤,不符合需求要求。
  • 错误的map转换:需求要求返回原数组中符合条件的整数,map(x => x / 11)会把原数值改为除以11之后的结果,完全偏离需求。
  • 缺少最小值计算逻辑:当前函数返回的是处理后的数组,没有做最小值聚合计算。
  • 未处理空匹配场景:如果数组中没有任何11的倍数,没有做兼容处理。

修正后代码

let arr = [-6, -91, 1011, -100, 84, -22, 0, 1, 473]

function solution(A) {
  // 仅过滤所有11的倍数
  const validNumbers = A.filter(num => num % 11 === 0);
  // 无匹配值时可根据业务需求调整返回值,此处返回undefined作为示例
  if (!validNumbers.length) return undefined;
  // 计算并返回最小值
  return Math.min(...validNumbers);
}
console.log(solution(arr)); // 输出结果为-22,符合需求预期

内容的提问来源于stack exchange,提问作者Ahmed Ali

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 22:12:02