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

SplitFunction函数求和仅返回7的异常问题排查求助

问题排查与修复:SplitFunction求和结果异常

你的代码问题出在return语句的位置:return sum被写在了for循环内部,导致循环仅执行第一次迭代(处理第一个元素'7')时,就直接返回了当前的sum值(7),后续的循环迭代完全没有机会执行,自然无法累加12和100。

修正后的代码

function SplitFunction(str){
  let y = str.split('+')
  let sum = 0
  for(let i = 0; i < y.length; i++){ // 给i声明变量,避免全局变量污染
    sum += parseInt(y[i])
  }
  return sum // 将return移到循环外部,确保所有元素累加完成后再返回
}
console.log(SplitFunction('7+12+100')) // 输出119

额外优化建议

你也可以用数组的reduce方法简化代码,逻辑更简洁:

function SplitFunction(str){
  return str.split('+').reduce((total, numStr) => total + parseInt(numStr), 0)
}
console.log(SplitFunction('7+12+100')) // 输出119

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 01:45:36