应该怎么修改代码呀?才能运行过去
解决问题
Array.prototype._filter = function(fn) {
if (typeof fn !== "function") {
throw Error('参数必须是一个函数');
}
const res = [];
for (let i = 0, len = this.length; i < len; i++) {
fn(this[i]) && res.push(this[i]);
}
return res;
}
- this.forEach(function(x) {
+ var self = this
+ this.forEach(function(x, index) {
- if (callback(x) == true) {
+ if (callback(x, index, self)) {
newArray.push(x);
}
})
8 回答4.7k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
5 回答6.3k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
把接收的形参补充上去就可以了,图上的测试用例试了没问题的