gpt4 book ai didi

javascript - Date.js 中一周的第一天 - 星期一

转载 作者:行者123 更新时间:2023-11-28 09:19:45 27 4
gpt4 key购买 nike

我在使用 Date.js 库时遇到一些问题。我使用俄罗斯文化设置。一周的第一天设置为 1。这意味着我的一周应该是从周一到周日。星期一应该是我打电话时的返回值:Date.getDayNumberFromName('понедельник');//星期一,应该返回0和Date.getDayNumberFromName('воскресенье');//周日,它应该返回 6

当然,它对于所有周的计算都应该是真实的。例如,今天(3 月 3 日星期日),此代码:Date.monday() 应返回 2 月 25 日。但事实并非如此。为什么?我应该怎么做才能更改全局“firstDayOfWeek”?

更新: fiddle 有一些问题。我在自己的主机上做了一个例子:http://sulla.ru/lab/

最佳答案

我对这个几乎死了的库进行了调试(死了,因为上次更新是大约 4 年前),我发现了错误。计算shift的sdf函数是这样的:

var sdf = function (n) {
return function () {
var t = $D.today(), shift = n - t.getDay();
if (n === 0 && $C.firstDayOfWeek === 1 && t.getDay() !== 0) {
shift = shift + 7;
}
return t.addDays(shift);
};
};

我已将其更改为:

var sdf = function (n) {
return function () {
var t = $D.today(), shift = n - t.getDay();

if (n === 0 && $C.firstDayOfWeek === 1 && t.getDay() !== 0) {
shift = shift + 7;
} else if (t.getDay() === 0 && n !== 0) {
shift = shift - 7;
}
return t.addDays(shift);
};
};

显然,它解决了我的问题。我已经针对此问题制作了错误单,并发送了答案。

关于javascript - Date.js 中一周的第一天 - 星期一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15185649/

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