Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 按当前日期筛选Json数据_Jquery_Json - Fatal编程技术网

Jquery 按当前日期筛选Json数据

Jquery 按当前日期筛选Json数据,jquery,json,Jquery,Json,几乎只是想按日期显示接下来的3款当前游戏。我希望看到未来3场比赛的日期,并有它的帐户,如果它是发生在当天的游戏(目前的日期在用户正在查看) $.getJSON('http://data.nba.com/data/v2015/json/mobile_teams/nba/2020/teams/trail_blazers_schedule_02.json,函数(数据){ var currentDate=新日期(); $(data.gscd.g).每个(函数(索引,值){ 对于(变量i=0;i

几乎只是想按日期显示接下来的3款当前游戏。我希望看到未来3场比赛的日期,并有它的帐户,如果它是发生在当天的游戏(目前的日期在用户正在查看)

$.getJSON('http://data.nba.com/data/v2015/json/mobile_teams/nba/2020/teams/trail_blazers_schedule_02.json,函数(数据){
var currentDate=新日期();
$(data.gscd.g).每个(函数(索引,值){
对于(变量i=0;i<1;i++){
文件。写入(“”+value.gdte+“”);
}
});
});

这可以通过3个操作实现:1)过滤游戏以删除过去的事件,2)按日期对游戏排序,3)选择3个游戏。大概是这样的:

    $.getJSON('http://data.nba.com/data/v2015/json/mobile_teams/nba/2020/teams/trail_blazers_schedule_02.json', function(data) {
        var currentDate = new Date();

        // 1. filter
        var filtered = data.gscd.g.filter((entry) => Date.parse(entry.gdte) > currentDate);
        // 2. sort
        filtered.sort((a, b) => Date.parse(b.gdte) - Date.parse(b.gdte));
        // 3. get 3 games
        var result = filtered.slice(0,3)
    
        $(result).each(function (index, value) {
                document.write('<h4>'+value.gdte+'</h4>');
        });
    });
$.getJSON('http://data.nba.com/data/v2015/json/mobile_teams/nba/2020/teams/trail_blazers_schedule_02.json,函数(数据){
var currentDate=新日期();
//1.过滤器
var filtered=data.gscd.g.filter((entry)=>Date.parse(entry.gdte)>currentDate);
//2.分类
filtered.sort((a,b)=>Date.parse(b.gdte)-Date.parse(b.gdte));
//3.获得3场比赛
var结果=过滤的.slice(0,3)
$(结果)。每个(函数(索引、值){
文件。写入(“”+value.gdte+“”);
});
});

我不理解你的问题,根据你的json示例,你能显示你想要显示的内容吗?@Frenchy只想显示当前的下3个游戏日期。所以01-30-2021 02-04-2021 02-07-2021我现在用这个函数得到的是所有日期。谢谢!工作得很好!你会不会碰巧知道如何用不同的格式来阅读日期?比如1月30日星期六。以及将军事时间转换为“etm”部分?再次感谢你的帮助!我使用
moment
库或
date fns
解析不同格式的日期:
moment('Sat,Jan 30','ddd,MMM DD')。toDate()
。用普通JavaScript解析日期要困难得多。当使用moment.js时,.toDate()会取代Date.parse吗?你能展示一下上面的例子是如何工作的吗?
Date.parse
以毫秒为单位返回时间。在矩中,您可以使用以下命令获得相同的值:
矩('Sat,Jan 30','ddd,MMM DD')。valueOf()
如果您需要以该值输出该值,那么可能是这样:
document.write(''+矩(value.gdte,'yyyyy-MM-DD')。format('ddd,MMM DD')+)
    $.getJSON('http://data.nba.com/data/v2015/json/mobile_teams/nba/2020/teams/trail_blazers_schedule_02.json', function(data) {
        var currentDate = new Date();

        // 1. filter
        var filtered = data.gscd.g.filter((entry) => Date.parse(entry.gdte) > currentDate);
        // 2. sort
        filtered.sort((a, b) => Date.parse(b.gdte) - Date.parse(b.gdte));
        // 3. get 3 games
        var result = filtered.slice(0,3)
    
        $(result).each(function (index, value) {
                document.write('<h4>'+value.gdte+'</h4>');
        });
    });