1. 日期格式概述
在JavaScript中,可以通过Date对象来获取当前日期,例如:
let now = new Date();
console.log(now);
上面的代码将会输出当前时间,例如:
Thu Jul 22 2021 16:23:29 GMT+0800 (中国标准时间)
但是,日期格式可能并不总是我们需要的格式。有时候,我们需要将日期格式转换为特定的形式,例如"2021年7月22日"或"07/22/2021"。下面,我们将介绍一些常见的日期格式。
1.1. 年月日格式
最常见的日期格式是"年-月-日",也就是ISO标准日期格式,例如"2021-07-22"。在JavaScript中,可以使用Date对象的toISOString()方法来将日期格式化为ISO格式:
let now = new Date();
let isoDate = now.toISOString().split('T')[0];
console.log(isoDate);
上面的代码将会输出当前日期的ISO格式,例如:
2021-07-22
1.2. 中文日期格式
在中文语境中,日期格式通常为"年月日"或"月日年",例如"2021年7月22日"或"7月22日2021年"。在JavaScript中,可以使用toLocaleDateString()方法来将日期格式化为特定的语言格式:
let now = new Date();
let cnDate = now.toLocaleDateString('zh-CN');
console.log(cnDate);
上面的代码将会输出当前日期的中文格式,例如:
2021/7/22
需要注意的是,toLocaleDateString()方法中的参数'zh-CN'指定了语言和地区,可以根据需要进行修改,例如'zh-TW'表示繁体中文。
1.3. 短日期格式
短日期格式通常为"月/日/年"或"日/月/年",例如"07/22/2021"或"22/07/2021"。在JavaScript中,可以使用getDate()、getMonth()和getFullYear()方法来分别获取日期的日、月和年,并将它们拼接成短日期格式:
let now = new Date();
let month = now.getMonth() + 1;
let day = now.getDate();
let year = now.getFullYear();
let shortDate = month + '/' + day + '/' + year;
console.log(shortDate);
上面的代码将会输出当前日期的短格式,例如:
7/22/2021
2. 修改日期格式
2.1. 修改中文日期格式
假设我们要将中文日期格式改为"yyyy年MM月dd日"的形式,可以使用正则表达式来替换字符串中的"/"为"年月日":
let now = new Date();
let cnDate = now.toLocaleDateString('zh-CN').replace(/[/]/g, '年').replace('月', '年').replace('日', '日');
console.log(cnDate);
上面的代码将会输出当前日期的新中文格式,例如:
2021年7月22日
2.2. 修改短日期格式
假设我们要将短日期格式改为"yyyy-MM-dd"的形式,可以使用if语句来判断月份和日期是否需要在前面添加"0":
let now = new Date();
let month = now.getMonth() + 1;
let day = now.getDate();
let year = now.getFullYear();
if (month < 10) {
month = '0' + month;
}
if (day < 10) {
day = '0' + day;
}
let shortDate = year + '-' + month + '-' + day;
console.log(shortDate);
上面的代码将会输出当前日期的新短格式,例如:
2021-07-22
3. 总结
JavaScript中的日期格式化可以通过Date对象和各种方法来实现。常见的日期格式有ISO格式、中文格式和短格式,可以根据实际需求进行选择和修改。在修改日期格式时,可以使用字符串的replace()方法和if语句来进行替换和判断,使日期格式符合要求。