The Odin Project JS基础练习04:数组元素移除代码测试失败求助
问题解答
- 变量名使用
a、b、c、d不是测试失败的原因:自动化测试只会校验函数的输入输出是否符合预期,不会校验函数内部的变量命名规则。 - 你代码的核心问题是缺少返回值:你把处理后的结果
c打印到了控制台,但没有用return语句将结果返回给调用方。JS的函数如果没有显式写return语句,默认返回的是undefined,和测试用例预期的数组结果不匹配,所以全部用例失败。
你只需要修改代码增加return语句即可:
const removeFromArray = function(arr, ...args) { let a = arr; let b = args; let c = a.filter(d => !b.includes(d)); return c; };
你之前在Chrome控制台测试看起来正确,是因为你看到了console.log打印的结果,但实际函数本身并没有把结果返回出去,测试框架拿不到正确的返回值自然判断执行失败。
内容的提问来源于stack exchange,提问作者Karl
相关产品推荐
相关产品推荐

