如何在 javascript 中显示明天的完整日期
how to display tomorrow's full date in javascript
我有以下脚本:
document.write('<p><span id="date-time">', new Date().toLocaleString(), '<\/span>.<\/p>')
if (document.getElementById) onload = function () {
setInterval("document.getElementById ('date-time').firstChild.data = new Date().toLocaleString()", 50)
}
它显示:
Friday, January 09, 2015 12:20 PM.
我怎样才能以相同的格式显示明天的日期而不显示时间?
您可以为 toLocaleString
设置自定义选项,请参阅 MDN documentation for toLocaleString
解决您的问题:
var tomorrow = new Date(Date.now() + 1000 * 3600 * 24);
var result = tomorrow.toLocaleString('en-US', { weekday: 'long', month: 'long', year: 'numeric', day: 'numeric' });
document.write('<p><span id="date-time">', result, '<\/span>.<\/p>');
var tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
var str = tomorrow.toLocaleString().substring(0,tomorrow.toLocaleString().indexOf(':')-3);
document.write('<p><span id="date-time">', str, '<\/span>.<\/p>')
if (document.getElementById) onload = function () {
setInterval("document.getElementById ('date-time').firstChild.data = str", 50)
}
正如@Qwerty 指出的那样,您不会总是在所有计算机上获得完全相同的格式。
这会将 +1
添加到当天的 getDate()
结果中,然后以给定的格式打印。
var tomorrow = new Date(new Date().setDate(new Date().getDate()+1));
console.log(tomorrow.toLocaleString('en-US', { weekday: 'long', month: 'long', year: 'numeric', day: 'numeric' }));
请注意,这将以相同的格式 在所有目的地和语言中打印日期 ,这与不带参数的 toLocaleString()
不同。
...
/编辑
将一天递增一天可能更简洁的方法是
var date = new Date();
date.setDate(date.getDate() + 1);
// date.toLocaleString(...) remains the same as above
日期可以用自纪元(1970 年 1 月 1 日,00:00:00 在 javascript 中为 UTC)以来的毫秒数表示
一天是 86400000 毫秒 (24 * 60 * 60 *1000)
创建一个 Date
object for today,then get the millisecond representation (getTime
) 并添加一天的毫秒数
创建(使用构造函数)或修改 Date
object (using setTime
method) from this millisecond representation and then use the toDateString
方法以 return 仅将日期部分作为字符串。
或者对于语言敏感的表示,使用 toLocaleDateString
注意:toLocaleDateString
浏览器支持有限,因此您可能需要自己执行手动格式化。
Where can I find documentation on formatting a date in JavaScript?
var todayObj = new Date()
tomorrowMs = todayObj.getTime() + 86400000,
tomorrowObj = new Date(tomorrowMs),
tomorrowDateStr = tomorrowObj.toDateString();
document.body.appendChild(document.createTextNode(tomorrowDateStr));
我有以下脚本:
document.write('<p><span id="date-time">', new Date().toLocaleString(), '<\/span>.<\/p>')
if (document.getElementById) onload = function () {
setInterval("document.getElementById ('date-time').firstChild.data = new Date().toLocaleString()", 50)
}
它显示:
Friday, January 09, 2015 12:20 PM.
我怎样才能以相同的格式显示明天的日期而不显示时间?
您可以为 toLocaleString
设置自定义选项,请参阅 MDN documentation for toLocaleString
解决您的问题:
var tomorrow = new Date(Date.now() + 1000 * 3600 * 24);
var result = tomorrow.toLocaleString('en-US', { weekday: 'long', month: 'long', year: 'numeric', day: 'numeric' });
document.write('<p><span id="date-time">', result, '<\/span>.<\/p>');
var tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
var str = tomorrow.toLocaleString().substring(0,tomorrow.toLocaleString().indexOf(':')-3);
document.write('<p><span id="date-time">', str, '<\/span>.<\/p>')
if (document.getElementById) onload = function () {
setInterval("document.getElementById ('date-time').firstChild.data = str", 50)
}
正如@Qwerty 指出的那样,您不会总是在所有计算机上获得完全相同的格式。
这会将 +1
添加到当天的 getDate()
结果中,然后以给定的格式打印。
var tomorrow = new Date(new Date().setDate(new Date().getDate()+1));
console.log(tomorrow.toLocaleString('en-US', { weekday: 'long', month: 'long', year: 'numeric', day: 'numeric' }));
请注意,这将以相同的格式 在所有目的地和语言中打印日期 ,这与不带参数的 toLocaleString()
不同。
...
/编辑
将一天递增一天可能更简洁的方法是
var date = new Date();
date.setDate(date.getDate() + 1);
// date.toLocaleString(...) remains the same as above
日期可以用自纪元(1970 年 1 月 1 日,00:00:00 在 javascript 中为 UTC)以来的毫秒数表示
一天是 86400000 毫秒 (24 * 60 * 60 *1000)
创建一个 Date
object for today,then get the millisecond representation (getTime
) 并添加一天的毫秒数
创建(使用构造函数)或修改 Date
object (using setTime
method) from this millisecond representation and then use the toDateString
方法以 return 仅将日期部分作为字符串。
或者对于语言敏感的表示,使用 toLocaleDateString
注意:toLocaleDateString
浏览器支持有限,因此您可能需要自己执行手动格式化。
Where can I find documentation on formatting a date in JavaScript?
var todayObj = new Date()
tomorrowMs = todayObj.getTime() + 86400000,
tomorrowObj = new Date(tomorrowMs),
tomorrowDateStr = tomorrowObj.toDateString();
document.body.appendChild(document.createTextNode(tomorrowDateStr));