Javascript 循环浏览JSON文件并根据截止日期清除
我有一个从用户那里获取信息的JSON文件。随着时间的推移,一些注释变得无关紧要,我正在寻找一种方法来删除以下超过3天的注释并保存JSON文件 JSON:Javascript 循环浏览JSON文件并根据截止日期清除,javascript,jquery,json,Javascript,Jquery,Json,我有一个从用户那里获取信息的JSON文件。随着时间的推移,一些注释变得无关紧要,我正在寻找一种方法来删除以下超过3天的注释并保存JSON文件 JSON: 您可以执行以下操作: const arr=[{“EngComment”:“,2/13/2021 19:37:58 emusk”, {“EngComment”:“,2/10/2021 10:47:39 bgates”, {“EngComment”:“,2/11/2021 21:28:5 mzucker”}”; const now=new Dat
您可以执行以下操作:
const arr=[{“EngComment”:“,
2/13/2021 19:37:58 emusk”,
{“EngComment”:“,
2/10/2021 10:47:39 bgates”,
{“EngComment”:“,
2/11/2021 21:28:5 mzucker”}”;
const now=new Date(),d=24*60*60*1000;
const res=arr.filter(c=>(现在是新日期(c.EngComment.match(/(?:\d{1,2}\/){2}\d{4}(?:::{d{1,2}:){2}\d{1,2}/)/d首先是免责声明-最好在服务器上而不是在客户端上处理删除
将来,将数据保存在对象中而不是单个字符串中会非常有用
尽管如此,我们还是要努力做到:
const dateRegex=/([0-3]?\d\/{1})([01]?\d\/{1})([12]{1}\d{3}.?)/g;
const data=[{“EngComment”:“,
2/13/2021 19:37:58 emusk”,
{“EngComment”:“,
2/3/2021 10:47:39 bgates”,
{“EngComment”:“,
2/9/2021 21:28:5 mzucker”}”;
//让我们过滤日期,只返回少于3天的项目
常量filteredData=data.filter((项)=>{
const dateString=item[“EngComment”].match(dateRegex);
//检查我们是否只有一场比赛
//如果一个用户评论了一个日期,那么我们将得到多个匹配项——让我们跳过它们
如果(dateString.length==1){
连续三天=60*60*24*1000*3
//让我们将字符串日期格式化为实际日期
const date=新日期(日期字符串[0]);
//让我们加上这三天,并在MS中返回,因为它更容易使用
const dateInMs=新日期(Date.getTime()+三天).getTime()
//获取当前日期并检查其是否超过项目日期(+3天)
如果(日期现在()
[{"EngComment":", <br> <br>2/9/2021 19:37:58 emusk"},
{"EngComment":", <br> <br>2/3/2021 10:47:39 bgates"},
{"EngComment":", <br> <br>2/9/2021 21:28:5 mzucker"}]
const parsedJSON = JSON.parse(json);
for( let prop in parsedJSON ){
if (json[parsedJSON] > 3days ){
json[parsedJSON] = ""
};
}