是否将值传递给javascript数组过滤器?
在javascript中,如何将变量传递给过滤器函数 在本例中,我试图将一个值传递给变量“maxage”:是否将值传递给javascript数组过滤器?,javascript,Javascript,在javascript中,如何将变量传递给过滤器函数 在本例中,我试图将一个值传递给变量“maxage”: var-dateFilter=function(value,maxage){//Age(毫秒) if(Date.now()-value
var-dateFilter=function(value,maxage){//Age(毫秒)
if(Date.now()-value
如何将值
500
作为maxage
传递给过滤器?您需要调用函数.prototype.bind
来创建类似于默认参数的内容
dateFilter
回调随后将使用500
加上“自动传入值”值、索引、数组
进行调用
function dateFilter( customArgument, value, index, array ) {
// customArgument === 500
}
也许没有必要把事情复杂化,试试简单的方法:
var maxage = 500,
newDates = dates.filter(function(value) {
return Date.now() - value < maxage;
});
var maxage=500,
newDates=dates.filter(函数(值){
返回日期.now()-值
maxage
已绑定到此上。考虑以下事项:
var dateFilter = function(value) {
if(value < this) return value;
}
var dates = [1,2,3];
console.log(dates.filter(dateFilter,2));
> [1] // Output.
var dateFilter=函数(值){
if(value[1]//输出。
显示过滤器
签名为数组。过滤器(回调[,thisObject])
我正试图将500作为变量maxage传递给过滤器。您已将其转过来。绑定参数是第一个,其他参数在后面传递。像这样:函数dateFilter(customArgument、value、index、array){
@iAtelazy:我说了没有吗?我什么都没听到…;-)
var maxage = 500,
newDates = dates.filter(function(value) {
return Date.now() - value < maxage;
});
var dateFilter = function(value) {
if(value < this) return value;
}
var dates = [1,2,3];
console.log(dates.filter(dateFilter,2));
> [1] // Output.