【问题标题】:how can I loop through an if else statement?如何循环遍历 if else 语句?
【发布时间】:2017-07-24 00:57:48
【问题描述】:

我正在尝试循环遍历此语句以给我一个游戏获胜者,但我希望每个游戏获胜者每 1000 毫秒显示一次。现在它正在循环整个事情,每 1000 毫秒给我一个完整的列表。什么是正确的措辞方式,以便它每 1000 毫秒循环并单独显示每个?

request("https://api.sportradar.us/ncaamb-t3/games/2017/03/02/schedule.json?api_key=*************", 
    function (error, response, body) {
        if (!error && response.statusCode == 200) {
            var data = JSON.parse(body);
            data.games.forEach((v) => {

                var homeName = (v.home.name);
                var awayName = (v.away.name);
                var homeScore = (v.home_points);
                var awayScore = (v.away_points);

                if (homeScore > awayScore) {
                    time = setInterval(function (time) {
                        console.log('statuses/update', 
                                    { status: homeName.toUpperCase() + " WIN!" },
                                    function (error, data, response) {});
                    }, 1000);
                } else {
                    console.log('statuses/update', 
                                { status: awayName.toUpperCase() + " WIN!" },
                                function (error, data, response) {});
                }
            });
        }
    });

【问题讨论】:

  • 为什么要将回调传递给console.log()
  • @mscdex 只是为了让我看看它现在在做什么。
  • 你的问题比较模糊

标签: javascript arrays node.js loops


【解决方案1】:

对于任何感兴趣的人,这就是我最终使它工作的方式,似乎可以解决问题!

request("https://api.sportradar.us/ncaamb-t3/games/2017/03/06/schedule.json?api_key=**************", 
    function (error, response, body) {
        if (!error && response.statusCode == 200) {
            var data = JSON.parse(body);
            data.games.forEach((v,i) => {
               setTimeout(() => {

                var homeName = (v.home.name);
                var awayName = (v.away.name);
                var homeScore = (v.home_points);
                var awayScore = (v.away_points);

                if (homeScore > awayScore) {
                        console.log('statuses/update', 
                                    { status: homeName.toUpperCase() + " WIN!" },
                                    function (error, data, response) {});

                } else {
                    console.log('statuses/update', 
                                { status: awayName.toUpperCase() + " WIN!" },
                                function (error, data, response) {});

                }
            }, i * 1000 );
            });

        }
    });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-15
    • 1970-01-01
    • 2015-10-28
    • 2020-05-02
    • 1970-01-01
    • 2017-02-17
    相关资源
    最近更新 更多