您的位置:

获取年月日详解

一、获取年月日代码

获取年月日是Web开发中很常见的操作,下面是一个简单的JavaScript代码示例,可以获取当前日期的年月日:

let now = new Date();
let year = now.getFullYear();
let month = now.getMonth() + 1; //月份从0开始,所以要+1
let day = now.getDate();
console.log(`${year}-${month}-${day}`);

其中,new Date()创建一个当前日期的Date对象实例,然后使用getFullYear()getMonth()getDate()方法分别获取年、月、日。需要注意的是,month从0开始,所以要+1。

二、使用js date获取年月日

JavaScript原生提供了Date对象,可以方便地获取年月日。下面是一个通过Date对象获取当前日期年月日的示例:

let now = new Date();
let year = now.getFullYear();
let month = now.getMonth() + 1; //月份从0开始,所以要+1
let day = now.getDate();
console.log(`${year}-${month}-${day}`);

此处与上面的代码示例一样,不再赘述。

三、获取年月日js库

如果需要更加丰富的时间处理功能,可以使用一些常见的JavaScript日期库,如moment.jsdate-fns等。下面是使用date-fns库获取当前日期的年月日的示例:

import { format } from 'date-fns';

let now = new Date();
let dateStr = format(now, 'yyyy-MM-dd');
console.log(dateStr);

使用import导入需要的函数,然后通过format函数进行格式化。在此示例中,传递给format函数的第二个参数是格式字符串'yyyy-MM-dd',表示返回的年月日格式。更多格式化选项可以查看date-fns的官方文档。

四、年月日时间怎么提取年月日

有时需要从类似于'2022-09-23 12:55:51'的字符串中提取年月日,下面是一个JavaScript代码示例:

let str = '2022-09-23 12:55:51';
let dateArr = str.split(' ')[0].split('-');
let year = dateArr[0];
let month = dateArr[1];
let day = dateArr[2];
console.log(`${year}-${month}-${day}`);

先使用split函数拆分字符串,将年月日与时间分开。然后再对年月日部分进行二次拆分,获取年月日各个部分。

五、获取年月日和时间

有时需要获取完整的年月日和时间信息,下面是一个使用date-fns库获取当前日期的年月日和时间的示例:

import { format } from 'date-fns';

let now = new Date();
let dateStr = format(now, 'yyyy-MM-dd HH:mm:ss');
console.log(dateStr);

类似于上面的示例,只不过格式化字符串中加上了时间信息'HH:mm:ss',表示返回的格式化字符串包含日期和时间信息。

六、date对象获取年月日

除了getFullYeargetMonthgetDate方法,Date对象还提供了一些其他获取年月日信息的方法,如getYeargetDaygetTime等。下面是一个使用getYear方法获取当前年份的示例:

let now = new Date();
let year = now.getYear() + 1900; //是以1900为基准的
console.log(year);

需要注意的是,getYear方法返回的是以1900为基准的年份,所以最终需要加上1900。

七、获取年月日格式化

有时候需要将数字形式的年月日格式化成指定的格式,这时可以使用一些常用的格式化库或者封装自己的方法。下面是一个自定义格式化函数的示例:

function formatDate(year, month, day, format) {
  let result = format.replace('yyyy', year)
                    .replace('MM', month < 10 ? `0${month}` : month)
                    .replace('dd', day < 10 ? `0${day}` : day);
  return result;
}

let now = new Date();
let year = now.getFullYear();
let month = now.getMonth() + 1;
let day = now.getDate();
let dateStr = formatDate(year, month, day, 'yyyy-MM-dd');
console.log(dateStr);

可以定义一个formatDate函数,传递想要格式化的年月日信息和format参数来控制输出的格式。在此示例中,return前的三行代码将年、月、日指定的位置替换成对应的值,返回最终格式化后的结果。

八、获取年月日时分代码

除了年月日,有时候也需要获取时分信息。下面是一个获取当前时间的年月日和时分的示例:

let now = new Date();
let year = now.getFullYear();
let month = now.getMonth() + 1;
let day = now.getDate();
let hour = now.getHours();
let minute = now.getMinutes();
console.log(`${year}-${month}-${day} ${hour}:${minute}`);

使用类似于第一、二点中的方法获取年月日,并通过getHoursgetMinutes方法获取时分信息。

九、获取年月日时分秒js

尽管大多数情况下只需要获取年月日或者年月日时分信息,但仍有时候需要完整的年月日时分秒信息。下面是一个使用date-fns库获取当前完整时间的示例:

import { format } from 'date-fns';

let now = new Date();
let dateStr = format(now, 'yyyy-MM-dd HH:mm:ss');
console.log(dateStr);

和第五点中的代码示例类似,只不过时间的格式化字符串中加上了秒'ss'