我正在创建添加日期和时间的函数。这些是变量:
var a = moment().format("MM/DD/YY");
var j = moment().format("hh:mm A");
var b = moment(a).format("MM/DD/YY");
var s = moment(j).format("hh:mm:ss");
var y = moment({ h: 23, m: 59}).format('hh:mm A');
以下是功能:
function myFunction() {
var c = moment(b).add(1, 'day').format("MM/DD/YY");
document.getElementById("demo2").innerHTML = "<p></p>"+ "X: " +c + "<br>" + y;
b = c;
}
function myFunction1() {
var c = moment(b).add(1, 'month').format("MM/DD/YY");
document.getElementById("demo2").innerHTML ="<p></p>"+ "X: " +c + "<br>" + y;
b = c;
}
function myFunction2() {
var c = moment(b).add(1, 'year').format("MM/DD/YY");
document.getElementById("demo2").innerHTML ="<p></p>"+ "X: " +c + "<br>" + y;
b = c;
}
function myFunction3() {
var c = moment(a).format("MM/DD/YY")
document.getElementById("demo2").innerHTML = "<p></p>"+ "X: 00/00/00" + "<br>" + y;
b = c;
}
function myFunction5() {
var d = moment(y).add(1, 'hours').format("hh:mm A");
document.getElementById("demo2").innerHTML = "<p></p>"+ "X: "+ c + "<br>" + d;
y = d;
}
function myFunction6() {
var e = moment(y).add(1, 'min').format('hh:mm A');
document.getElementById("demo2").innerHTML = "<p></p>"+ "X: "+ c + "<br>" + e;
y = e;
}
添加1天,1个月和1年的功能,以及clear(myFunction3)全部工作。时间函数没有。我从晚上11:59开始,并希望分别增加小时和分钟。我知道我的代码很粗糙,我还在学习。感谢
答案 0 :(得分:1)
检查http://momentjs.com/docs/#/manipulating/add/
您的小时加法功能应该有效,但“分钟”应拼写为“分钟”或使用简写“m”。
答案 1 :(得分:0)
感谢您的建议。我在第二个函数中修改了分钟,这是我如何使它工作。这与时间格式有关。
var y1 = moment({ h: 23, m: 59});
var y = y1.format('hh:mm A');
然后功能如下:
function myFunction5() {
var d1 = moment(y1).add(1, 'hours');
var d = d1.format('hh:mm A');
document.getElementById("demo2").innerHTML = "<p></p>"+ "X: "+ b + "<br>" + d;
y1 = d1;
}
function myFunction6() {
var e1 = moment(y1).add(1, 'minutes');
var e = e1.format('hh:mm A');
document.getElementById("demo2").innerHTML = "<p></p>"+ "X: "+ b + "<br>" + e;
y1 = e1;
}
我确信有更好的方法,但它的工作方式就是这样。
答案 2 :(得分:0)
您在代码中多次犯同样的错误:
var a = moment().format("MM/DD/YY");
var b = moment(a).format("MM/DD/YY");
a
是一个字符串,因此当您将其传递到moment(a)
时,您将解析字符串 - 这是不必要的。它也容易出错,因为您没有将任何特定输入格式作为第二个参数传递给moment
函数。如果您查看日志,您可能会看到一堆弃用警告。
它还不清楚你用它来实现什么,因为两个字符串无论如何都是相同的输出格式。如果你想获得当天的开始,那么它将是这样的:
var now = moment();
var a = now.format("...");
var b = now.clone().startOf('day').format("...");
(用您选择的格式替换...
)
换句话说 - 不要混淆使用string
和moment
实例,并且在不必要的时候不要解析字符串。
您在所有功能中犯了同样的错误。此外,正如其他人所指出的那样,使用'minutes'
或'm'
,但不使用'min'
。有关详细信息,请参阅the documentation。