📜  javascript中的日期(1)

📅  最后修改于: 2023-12-03 15:16:17.435000             🧑  作者: Mango

JavaScript中的日期

JavaScript中提供了内置的Date对象,用于处理日期和时间。Date对象可以用于获取和设置日期、时间以及执行各种日期操作。本文将为您介绍JavaScript中日期的基本操作和常见应用。

创建Date对象

要创建一个新的Date对象,可以使用new Date()构造函数。如果不传递任何参数,将返回当前日期和时间。

const now = new Date(); // 当前日期和时间

可以通过传递参数到构造函数来创建特定日期和时间的Date对象。这些参数可以是代表年、月、日、小时、分钟、秒和毫秒的数字。其中,月份是从0开始计数(0表示一月)。

const customDate = new Date(2022, 5, 15, 12, 30, 0, 0); // 2022年6月15日12:30:00

您还可以使用字符串作为参数来创建Date对象。字符串应该是符合日期时间格式的,如"YYYY-MM-DD"或"YYYY-MM-DDTHH:mm:ss"。

const dateString = '2022-06-15T12:30:00';
const dateFromString = new Date(dateString); // 从字符串创建Date对象
获取日期和时间

通过Date对象,您可以获取各种有关日期和时间的信息。

const date = new Date();

const year = date.getFullYear(); // 获取年份(4位)
const month = date.getMonth(); // 获取月份(0-11)
const day = date.getDate(); // 获取日期(1-31)
const hour = date.getHours(); // 获取小时(0-23)
const minute = date.getMinutes(); // 获取分钟(0-59)
const second = date.getSeconds(); // 获取秒(0-59)
const millisecond = date.getMilliseconds(); // 获取毫秒(0-999)
const weekday = date.getDay(); // 获取星期几(0-6,0表示星期日)

console.log(`${year}-${month + 1}-${day} ${hour}:${minute}:${second}`);
格式化日期和时间

要将日期和时间格式化为特定的字符串,可以使用toLocaleString()或自己构建格式化字符串。

const date = new Date();

const formattedDate = date.toLocaleString('en-US', { 
  year: 'numeric', 
  month: 'long', 
  day: 'numeric',
  hour: 'numeric',
  minute: 'numeric',
  second: 'numeric'
});

console.log(formattedDate); // 月份全名(英文),如June;日期两位数,如01;时间格式为12小时制

const formattedDate2 = `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()} ${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}`;
console.log(formattedDate2); // 自定义格式化字符串,如2022-6-15 12:30:00
日期操作

使用Date对象,您可以执行各种日期操作,例如添加或减去天数、月份和年份。

const date = new Date();

date.setDate(date.getDate() + 5); // 添加5天
date.setMonth(date.getMonth() - 1); // 减去1个月
date.setFullYear(date.getFullYear() + 1); // 添加1年

console.log(date.toLocaleDateString());
时间戳

时间戳是一个表示日期和时间的数字,它表示自格林威治时间1970年1月1日00:00:00以来的毫秒数。JavaScript中,您可以使用getTime()方法获取一个Date对象的时间戳。

const date = new Date();
const timestamp = date.getTime();

console.log(timestamp); // 当前时间戳

您还可以使用时间戳创建一个新的Date对象。

const timestamp = 1623748945000; // 时间戳

const date = new Date(timestamp);

console.log(date.toLocaleString());

以上介绍了JavaScript中日期的基本操作和常见应用。您可以根据实际需求使用Date对象来执行各种日期和时间相关的操作。详细的Date API文档可参考MDN