我试图显示用户输入答案后剩余的时间。
所以它应该是这样的。这门课什么时候开始2022-09-05(用户输入(今天距离课程开始还有32天
我不认为它会那么复杂,但我无法让它发挥作用,我一直得到NaN,或者它就是不起作用。
我查过MDN,但就是不明白。
代码如下所示。
function start(timePassedIn) {
return `Today it is ${timePassedIn} days left until the
course starts`;
}
const course = prompt("When does that course start? ");
const starting = start(course);
console.log(starting);
我删除了当天的所有尝试,这样你就可以给我新的输入。
感谢我所能得到的一切帮助。
你能试试这个吗。
function start(timePassedIn) {
return `Today it is ${timePassedIn} days left until the
course starts`;
}
function getDateDifference(inputDate) {
const date1 = new Date(inputDate);
const date2 = new Date();
const diffTime = Math.abs(date1 - date2);
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
return diffDays;
}
const course = prompt("When does that course start? ");
const starting = start(getDateDifference(course));
日期可以通过两种方式存储在程序中:
- 作为字符串,例如"10月10日";或";2022-08-01";或";09/11">
- 作为日期对象。您已经在MDN中找到Date的文档
我们使用字符串进行输入和输出,使用日期对象进行计算,就像两个日期之间的差异一样。
如果我正确理解你,你的程序应该
- 询问用户课程何时开始
- 计算离课程开始还有多少天
- 输出天数
当你试图编程时,第2步是复杂的一步:
1.询问用户课程何时开始:
`const course = prompt("When does that course start? ");`
course
将包含一个带日期的字符串。也许你会最好分别问一天和一个月?
const month = prompt("When does that course start? Please enter the month as a number");
const day = prompt("When does that course start? Please enter the day as a number");
2.计算距离课程开始还有多少天
a( 将输入转换为Date对象。b( 获取当前日期的日期对象c( 计算差额并转换为天数