挑战掉落它有问题。
用户代理是: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36
。
请描述如何重现此问题,并尽可能包含屏幕截图的链接。
我的代码:
function dropElements(arr, func) {
// Drop them elements.
var duplicateArr = [];
for(var i = 0 ; i < arr.length; i++){
if(func(arr[i])){
duplicateArr.push(arr[i]);
}
}
return duplicateArr;
}
dropElements([1, 2, 3], function(n) {return n < 3; });
不正确的测试用例
dropElements([0, 1, 0, 1], function(n) {return n === 1;}) 应该返回 [1, 0, 1] - 实际返回值 [1, 1]
dropElements([1, 2, 3, 9, 2], function(n) {return n > 2;}) 应该返回 [3, 9, 2] - 实际返回值 [3, 9]
@pdhanoya您要删除数组中的项目,从索引 0 开始,直到函数变为真,而不是删除数组中不使函数(第二个参数)为真的所有项目。 我明白它是如何被误解的。
@pdhanoya正如@dhcodes指出的那样,指令说要删除元素,直到函数为真。
删除数组(第一个参数)的元素,从前面开始,直到谓词(第二个参数)返回
true
。
因此,测试和说明彼此一致。 如果您遇到困难或对未来的挑战有疑问,请先向帮助室提问。 快乐编码!
我有同样的疑问。 感谢您的明确答复。
最有用的评论
@pdhanoya您要删除数组中的项目,从索引 0 开始,直到函数变为真,而不是删除数组中不使函数(第二个参数)为真的所有项目。 我明白它是如何被误解的。