Js-w3school(2020.2.5)【js日期格式】

本文深入讲解JavaScript日期格式的输出和创建方法,包括默认格式、UTC字符串、易读格式及四种输入格式,探讨了日期对象的创建方式和时区处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

十三、js日期格式

1.输出格式
默认情况下,JavaScript 将使用浏览器的时区并将日期显示为全文本字符串:

d = new Date();
document.getElementById("demo").innerHTML = d;
//或者document.getElementById("demo").innerHTML = d.toString();
//Tue Apr 02 2019 09:01:19 GMT+0800 (中国标准时间)

日期对象是静态的。计算机时间正在滴答作响,但日期对象不会。
toUTCString() 方法将日期转换为 UTC 字符串(一种日期显示标准)。

var d = new Date();
document.getElementById("demo").innerHTML = d.toUTCString();
// Wed, 05 Feb 2020 03:44:34 GMT

toDateString() 方法将日期转换为更易读的格式:

var d = new Date();
document.getElementById("demo").innerHTML = d.toDateString();
// Wed Feb 05 2020

2.创建date()对象
Date 对象由新的 Date() 构造函数创建。
有 4 种方法创建新的日期对象:
• new Date():new Date() 用当前日期和时间创建新的日期对象

var d = new Date();

• new Date(year, month, day, hours, minutes, seconds, milliseconds)
new Date(year, month, …) 用指定日期和时间创建新的日期对象。
7个数字分别指定年、月、日、小时、分钟、秒和毫秒(按此顺序)

var d = new Date(2018, 11, 24, 10, 33, 30, 0);

2018年12月24日10:33:30:0
(月份的计数从0开始)
当保留两个即以上参数正常解释
当保留一个参数时候参数认定为毫秒new Date(milliseconds)
一位和两位数年份将被解释为 19(xx+1) 年:

var d = new Date(99, 11, 24);
// Tue Jan 25 2000 00:00:00 GMT+0800 (中国标准时间)
var d = new Date(9, 11, 24);
// Tue Jan 25 1910 00:00:00 GMT+0800 (中国标准时间)

三位数年份解释为 xxx+1年

var d = new Date(999, 11, 24);
// Sat Jan 25 1000 00:00:00 GMT+0805 (中国标准时间)

• new Date(milliseconds)
JavaScript 将日期存储为自 1970 年 1 月 1 日 00:00:00 UTC(协调世界时)以来的毫秒数。UTC(Universal Time Coordinated)等同于 GMT(格林威治时间)
零时间是 1970 年 1 月 1 日 00:00:00 UTC。

var d = new Date(0);// Thu Jan 01 1970 08:00:00 GMT+0800 (中国标准时间)

一天(24 小时)是 86 400 000 毫秒。

var d = new Date(86400000);
// Fri Jan 02 1970 08:00:00 GMT+0800 (中国标准时间)

• new Date(date string)
new Date(dateString) 从日期字符串创建一个新的日期对象:
“月 日,年 时间”

var d = new Date("October 13, 2014 11:13:00");
// Wed Dec 25 2019 12:46:00 GMT+0800 (中国标准时间)

3.四种 JavaScript 日期输入格式:
在这里插入图片描述
var d = new Date(“2018-02-19”);
可以有”年-月-日”,或者”年-月”,”年”
写日期也可以添加时、分和秒 (YYYY-MM-DDTHH:MM:SS):
var d = new Date(“2018-02-19T12:00:00”);
日期和时间通过大写字母 T 来分隔。
UTC 时间通过大写字母 Z 来定义。
如果您希望修改相对于 UTC 的时间,请删除 Z 并用 +HH:MM 或 -HH:MM 代替
在日期-时间字符串中省略 T 或 Z,在不同浏览器中会产生不同结果。
4.时区-浏览器
在设置日期时,如果不规定时区,则 JavaScript 会使用浏览器的时区。
当获取日期时,如果不规定时区,则结果会被转换为浏览器时区。
5.短日期
短日期通常使用 “MM/DD/YYYY” 这样的语法:

var d = new Date("02/19/2018");

警告:
在某些浏览器中,不带前导零的月或其会产生错误:

var d = new Date("2018-2-19");

“YYYY / MM / DD”的行为未定义。
6.长日期
长日期通常以 “MMM DD YYYY” 这样的语法来写

var d = new Date("Feb 19 2018")

月和天能够以任意顺序出现:

var d = new Date("19 Feb 2018");

逗号会被忽略,且对大小写不敏感:

var d = new Date("FEBRUARY, 25, 2015");

7.完整日期
JavaScript 接受“完整 JavaScript 格式”的日期字符串
(JavaScript 会忽略日期名称和时间括号中的错误)

var d = new Date("Mon Feb 19 2018 06:55:23 GMT+0100 (W. Europe Standard Time)");

在这里插入图片描述
9.
在这里插入图片描述
10.
在这里插入图片描述
11.比较日期

<script>
var today, someday, text;
today = new Date();
someday = new Date(2020, 0, 1);
if (someday > today) {
  text = "今天在 "+someday.toLocaleString()+" 之前。";
} else {
  text = "今天在 "+someday.toLocaleString()+" 之后。";
}
document.getElementById("demo").innerHTML = text;
</script>
//今天在 2020/1/1 上午12:00:00 之后。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值