Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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/3/arrays/12.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
Javascript 每次调用函数时,我都要打印第二天的名称_Javascript_Arrays_Closures - Fatal编程技术网

Javascript 每次调用函数时,我都要打印第二天的名称

Javascript 每次调用函数时,我都要打印第二天的名称,javascript,arrays,closures,Javascript,Arrays,Closures,我需要创建一个名为NextDay()的javascript函数。 此函数应在控制台中打印第二天的名称 我创建了一个函数,如下所示: //Function to Print the name of Next Day in Javascript var NextDay = (function () { counter = 0; var nextDay = function () { var days = ["Sunday", "Monday", "T

我需要创建一个名为NextDay()的javascript函数。 此函数应在控制台中打印第二天的名称

我创建了一个函数,如下所示:

    //Function to Print the name of Next Day in Javascript
    var NextDay = (function () {
    counter = 0;
    var nextDay = function () {

        var days = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", 
                     "Friday", "Saturday"];
        var date = new Date();
        var dayNumber = date.getDay() + counter;
        if (dayNumber < 6) {
            dayNumber = dayNumber;
        }
        else {
            dayNumber = (dayNumber % 6);
        }
        var dayName = days[dayNumber];
        counter += 1;
        return dayName;
    };

    return nextDay;
})();
NextDay();
NextDay();
NextDay();
NextDay();
NextDay();
NextDay();
NextDay();
NextDay();
//用于在Javascript中打印第二天的名称的函数
var NextDay=(函数(){
计数器=0;
var nextDay=函数(){
var days=[“周日”、“周一”、“周二”、“周三”、“周四”,
“星期五”、“星期六”];
变量日期=新日期();
var dayNumber=date.getDay()+计数器;
如果(天数<6){
dayNumber=dayNumber;
}
否则{
dayNumber=(dayNumber%6);
}
var dayName=天数[天数];
计数器+=1;
返回dayName;
};
下一天返回;
})();
下一天();
下一天();
下一天();
下一天();
下一天();
下一天();
下一天();
下一天();
我希望输出为:

星期六 星期日
星期一 星期二 星期三 星期四 星期五 星期六

但我得到的结果如下: 星期日 星期一 星期二 星期三 星期四 星期五 星期日 星期一

我相信我在这里错过了一些非常小的东西,因为我在这里被跳过了一天。
请建议

我不是舒尔,你的哪一个数学错误,但有一个更简单的方法:

var counter =(new Date).getDay();
var days = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
var nextDay = function () {
    var day=days[counter];
    counter = (counter+1)%7;
    return day;
};

发电机功能可能很方便

函数*nextDay(){
设i=0,
天数=[“星期日”、“星期一”、“星期二”、“星期三”、“星期四”、“星期五”、“星期六”];
而(i<7){
收益率控制台.log(天[i++]);
如果(i==7)i=0;
}
}
设gen=nextDay();
下一代();
下一代();
下一代();
下一代();
下一代();
下一代();
下一代();
下一代();

下一代()谢谢你的帮助,我试过了你的一个,这也跳过了一天。星期六星期一星期四星期一星期三星期三是不是和我想的一样,[I++]天不是更有用吗?@Jonasw谢谢(: