需要帮助在 JavaScript 中编写自定义过滤器函数
Need help writing custom filter function in JavaScript
我写了一个each()
函数,它工作正常,其行为与下划线的_.each()
完全相同。我想编写一个类似于 filter()
的函数,但为通过回调/谓词函数运行的每个元素返回true
或false
。
var filter = function(collection, callback){
each(collection, function(item){
if (callback(item)) {return true;}
else {return false}
});
};
console.log(filter([1,2,3,4,5], function(x) {return x % 2 == 0;}));
这就是我所拥有的,但它正在返回undefined
.我做错了什么?
很明显 ; 你在每个方法中都返回 true 或 false。
从过滤器功能的角度来看,您什么也没返回。
如果你想写一个过滤器函数,你应该做这样的事情:
var filter = function(collection, callback){
var result = [];
each(collection, function(item){
result.push((callback(item))?true:false);
}
);
return result;
};
另一种可能性是修改你的每个,以便它返回一个数组,其中包含已返回的每个值。
你的过滤器函数不返回任何内容。尝试返回 each() 调用的结果。
相关文章:
- 如何在angular.js中动态应用自定义过滤器
- AngularJS自定义过滤器未触发点击事件
- Vue.js如何在定义API变量之前实现自定义过滤器
- 用于分页的 AngularJS 自定义过滤器
- 为什么我的自定义过滤器会导致无限消化
- 如何仅在文本字段中有值时才将自定义过滤器应用于 ng-repeat
- 指令中的 AngularJS 自定义过滤器以格式化值
- Angular自定义过滤器在处理某些匹配时注销,但会过滤掉所有结果
- Angular js自定义过滤器未定义
- AngularJS自定义过滤器调用了两次,并在第二次调用时删除输入数据
- 自定义过滤器的问题,我缺少什么
- 如何在Angular 1.3.6上创建一个自定义过滤器来搜索嵌套数组
- json数组angularjs中的自定义过滤器
- 两个日期之间的自定义过滤器 AngularJS
- PG-promise为选择查询创建自定义过滤器
- 角度.js. 如何计算满足自定义过滤器的 ng 重复迭代
- Angular JS“Startswith”自定义过滤器
- 无法让 Angular 自定义过滤器工作
- AngularJS自定义过滤器被调用两次
- 如何使用 Angularjs 创建自定义过滤器