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

JavaScript如何实现多参数相乘函数,满足指定边界场景返回要求?

现有代码的问题

你当前的实现有两处不符合需求的逻辑:

  • 无参数传入时arguments.length为0,循环不会执行,直接返回初始值1,不符合无参数返回0的要求
  • 单个参数的场景虽然1 * 参数的数值结果可能和直接返回参数一致,但逻辑没有对齐需求,遇到非数值类型参数时会产生额外的类型转换,不符合要求

修复后的代码

function multiplyArguments() {
    // 无参数场景直接返回0
    if (arguments.length === 0) {
        return 0;
    }
    // 单个参数场景直接返回该参数
    if (arguments.length === 1) {
        return arguments[0];
    }
    // 多参数场景计算乘积
    let product = 1;
    for (let i = 0; i < arguments.length; i++) {
        product *= arguments[i];
    }
    return product;
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 12:45:02