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

JavaScript实现数组最大最小值对象返回问题求助

问题分析与修正代码

错误原因

  • 未处理空数组场景:当传入空数组时,Math.max(...[])会返回-Infinity,Math.min(...[])返回Infinity,完全不符合返回空对象的需求。
  • 缺少返回语句:函数内最后一行的模板字符串没有用return关键字返回,调用函数时会得到undefined。
  • 返回格式错误:题目要求返回对象,但原代码试图返回一个字符串,结构完全不符。

修正后的完整代码

function findBigSmall(numbers) {
  // 处理空数组情况
  if (numbers.length === 0) {
    return {};
  }
  // 单个元素时,最大最小值都是自身
  const highest = Math.max(...numbers);
  const lowest = Math.min(...numbers);
  // 返回符合要求的对象
  return { biggest: highest, smallest: lowest };
}

代码说明

  • 先判断数组长度,为空则直接返回空对象,满足需求。
  • 使用Math.max和Math.min配合扩展运算符处理数组,当数组只有一个元素时,这两个方法都会返回该元素,自然满足“同一元素为最大最小值”的要求。
  • 最后返回结构正确的对象,键名和格式完全匹配题目要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 15:00:53