Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.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 正在检查MomentJS数据到字符串在if check中未正确计算_Javascript_Momentjs - Fatal编程技术网

Javascript 正在检查MomentJS数据到字符串在if check中未正确计算

Javascript 正在检查MomentJS数据到字符串在if check中未正确计算,javascript,momentjs,Javascript,Momentjs,我正在尝试创建一个函数来创建一个数组,其中包含不是星期五、星期六或星期天的接下来两周的天数moment().isoWeekday().toString()根据日期返回数字1-7。我有一个if语句检查每天是否匹配5、6或7,但无论哪一天,它们都返回true。我不确定我做错了什么。请告知 for(设i=1;i

我正在尝试创建一个函数来创建一个数组,其中包含不是星期五、星期六或星期天的接下来两周的天数
moment().isoWeekday().toString()
根据日期返回数字1-7。我有一个if语句检查每天是否匹配5、6或7,但无论哪一天,它们都返回true。我不确定我做错了什么。请告知

for(设i=1;i<14;i++){
if(moment().add(i,'days').isoWeekday().toString()!='5'||
矩().add(i,'days').isoWeekday().toString()!='6'||
矩().add(i,'days').isoWeekday().toString()!='7'){
console.log(矩().add(i,'days').isoWeekday().toString())
dayArray.push(矩().add(i,'days').toString());
}
}

错误似乎来自您的条件,您使用或(| |)代替和(&&)

for(设i=1;i<14;i++){
if(矩().add(i,'days').isoWeekday().toString()!='5'&&
矩().add(i,'days').isoWeekday().toString()!='6'&&
矩().add(i,'days').isoWeekday().toString()!='7'){
console.log(矩().add(i,'days').isoWeekday().toString())
dayArray.push(矩().add(i,'days').toString());
}
}

一些指针。为什么要将
.isoWeekday()
的结果转换为字符串?如果将其保留为整数,则If语句将是
If(矩().add(i,'days').isoWeekday()<5)
,这样您就不必担心
|
&&
之类的问题。还有,为什么要重新计算
moment().add(i,'days').isoWeekday()
5次?这只是尖叫“制造一个变量”@gforce301太棒了!根据你的建议,我刚刚进行了重构,看起来更干净了。谢谢
for (let i = 1; i < 14; i++) {
    if (moment().add(i, 'days').isoWeekday().toString() !== '5' &&
        moment().add(i, 'days').isoWeekday().toString() !== '6' &&
        moment().add(i, 'days').isoWeekday().toString() !== '7') {
        console.log(moment().add(i, 'days').isoWeekday().toString())
        dayArray.push(moment().add(i, 'days').toString());
    }
}