Его*_*нко 3 javascript arrays filter
我尝试按设定日期过滤数组
var di = new Date(this.state.date.slice(0, 4),
this.state.date.slice(5, 7),
this.state.date.slice(8, 10),
'10',
'00');
var result2 = result.filter(function(number) {
return (number[2] == di)
});
Run Code Online (Sandbox Code Playgroud)
但结果是一个空数组 ( result2)。
console.log(di)下面是数组的一个元素的屏幕截图-
您不能使用 JavaScript 来比较两个不同的对象,==
这将true仅返回比较对象的同一实例。
为了使您的代码正常工作,您可以尝试将日期转换为字符串。
var result2 = result.filter(function(number) {
return (number[2].toString() == di.toString())
});
Run Code Online (Sandbox Code Playgroud)
或者使用 Date 对象的 .getTime() 方法
var result2 = result.filter(function(number) {
return (number[2].getTime() == di.getTime())
});
Run Code Online (Sandbox Code Playgroud)