gpt4 book ai didi

javascript - moment.isoWeekday 不是函数

转载 作者:行者123 更新时间:2023-11-30 19:36:57 25 4
gpt4 key购买 nike

我正在使用 codesandbox,同样的错误不断出现:502: bad gateway。在终端上看,显然是因为 moment.isoWeekday 不是一个函数。这是为什么?

我查看了 moment.js,我将其放入代码的方式显然是正确的。

var http = require("http");
var moment = require("moment");
moment().format();

function getDates() {
var start = moment.utc("1st Jan 2019");
var end = moment.utc("31st December 2019");
var dates = [];
var current = start.clone();

if (current !== moment.isoWeekday(1)) {
current = moment().add(1, "w");
}
while (current.isBefore(end)) {
current.clone.push(dates);
current = moment.add(2, "w");
}

return dates;
}

http
.createServer(function(req, res) {
res.writeHead(200, { "Content-Type": "text/plain" });
res.write("day,date", "\n");
var dates = getDates();
for (var i = 0; i < dates.length; i++) {
res.write(moment.format("dddd, Do MMMM YYYY", dates[i]), "\n");
}
res.end();
})
.listen(8080);

我正在执行一项需要输出日期的任务。 isoWeekday 是代码的一部分,它应该检查日期是否不是 Monday,然后将一周添加到变量上,使其设置为 Monday 下一周。

最佳答案

您的代码中有几个错误:

  1. 你在 moment.isoWeekday(1)
  2. 的时刻后忘记了 ()
  3. moment.utc("1st Jan 2019") 的输出为空,因为格式无法被 moment, moment.utc("1st Jan 2019", "Do MMM YYYY") 应该按预期工作
  4. 为了将 current 的克隆推送到数组 dates 上,您必须执行 dates.push(current.clone());而不是 current.clone.push(dates);
  5. moment.format("dddd, Do MMMM YYYY", dates[i]) 不正确,您必须执行 dates[i].format("dddd, Do MMMM YYYY") 而不是

工作示例:

function getDates() {
var start = moment.utc("1st Jan 2019", "Do MMM YYYY");
var end = moment.utc("31st December 2019", "Do MMM YYYY");
var dates = [];
var current = start.clone();

if (current.isoWeekday() !== 1) {
//current = current.add(1, "w");
const nextMonday = 1 + current.isoWeekday() + (7 - current.isoWeekday());
current.day(nextMonday);
}

while (current.isBefore(end)) {
dates.push(current.clone());
current = current.add(2, "w");
}

return dates;
}

console.log("day, date");
var dates = getDates();
for (var i = 0; i < dates.length; i++) {
console.log(dates[i].format("dddd, Do MMMM YYYY"));
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>

关于javascript - moment.isoWeekday 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55848173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com