js中格式化日期时间型数据函数代码

要在JavaScript中格式化日期时间型数据,可以使用Date对象自带的方法,也可以使用第三方库如Moment.js。下面将分别介绍这两种方法的使用。

使用Date对象自带的方法

使用Date对象自带的方法可以方便地获取当前的日期时间或指定日期时间的格式化值。以下是一些常用的Date对象方法及其返回值:

Date.getFullYear()

获取指定日期的年份。例如:

const date = new Date('2021-07-15T01:23:45');
const year = date.getFullYear();
console.log(year); // 2021

Date.getMonth()

获取指定日期的月份,注意返回值从0开始计数(0表示1月,1表示2月,以此类推)。例如:

const date = new Date('2021-07-15T01:23:45');
const month = date.getMonth(); // 6,表示7月份
console.log(month);

Date.getDate()

获取指定日期的日期部分,即几号。例如:

const date = new Date('2021-07-15T01:23:45');
const day = date.getDate(); // 15
console.log(day);

Date.getHours()

获取指定日期的小时数。例如:

const date = new Date('2021-07-15T01:23:45');
const hour = date.getHours(); // 1
console.log(hour);

Date.getMinutes()

获取指定日期的分钟数。例如:

const date = new Date('2021-07-15T01:23:45');
const minute = date.getMinutes(); // 23
console.log(minute);

Date.getSeconds()

获取指定日期的秒数。例如:

const date = new Date('2021-07-15T01:23:45');
const second = date.getSeconds(); // 45
console.log(second);

如果要获取当前的日期时间,只需要创建一个空的Date对象即可:

const now = new Date();
console.log(now.getFullYear()); // 当前年份
console.log(now.getMonth());    // 当前月份
console.log(now.getDate());     // 当前几号
console.log(now.getHours());    // 当前小时数
console.log(now.getMinutes());  // 当前分钟数
console.log(now.getSeconds());  // 当前秒数

构建自定义格式化字符串

如果需要将以上的各个部分组合成一个完整的日期时间格式化字符串,可以使用字符串模板或者正则表达式。以下是一个实现将Date对象转换成自定义格式化字符串的示例代码:

function formatDate(date, format) {
  const year = date.getFullYear();
  const month = date.getMonth() + 1;
  const day = date.getDate();
  const hour = date.getHours();
  const minute = date.getMinutes();
  const second = date.getSeconds();
  const dateFormat = {
    'yyyy': year,
    'MM': month.toString().padStart(2, '0'),
    'dd': day.toString().padStart(2, '0'),
    'HH': hour.toString().padStart(2, '0'),
    'mm': minute.toString().padStart(2, '0'),
    'ss': second.toString().padStart(2, '0')
  };
  const regExp = new RegExp(Object.keys(dateFormat).join('|'), 'g');
  return format.replace(regExp, match => dateFormat[match]);
}

该函数接收一个Date对象和一个格式化字符串,返回格式化后的日期时间字符串。使用示例如下:

const date = new Date('2021-07-15T01:23:45');
console.log(formatDate(date, 'yyyy/MM/dd HH:mm:ss')); // "2021/07/15 01:23:45"
console.log(formatDate(date, 'HH:mm:ss'));           // "01:23:45"

使用Moment.js库

Moment.js是一个流行的JavaScript日期时间处理库,有着更多的功能和更易用的API。使用Moment.js可以轻松地解析、格式化、计算和操作日期时间。以下是使用Moment.js进行日期时间格式化的示例代码:

首先需要引入Moment.js:

<script src="https://cdn.bootcdn.net/ajax/libs/moment.js/2.29.1/moment.min.js"></script>

然后,可以使用moment()函数或moment对象指定一个日期时间,然后使用format()函数指定格式化字符串:

const date = moment('2021-07-15T01:23:45');
console.log(date.format('YYYY/MM/DD HH:mm:ss'));  // "2021/07/15 01:23:45"
console.log(date.format('HH:mm:ss'));            // "01:23:45"

除了format()函数,Moment.js还提供了很多其他有用的函数,如add()、subtract()、startOf()、endOf()等,可以方便地进行日期时间计算和操作。

以上是JS中格式化日期时间型数据函数代码的完整攻略,希望能对你有所帮助!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js中格式化日期时间型数据函数代码 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • 表单正则验证及文件上传验证功能

    表单正则验证及文件上传验证功能是在 Web 开发中经常使用的验证技术,可以保证用户填写的表单数据符合规范,并且可以确保文件上传的格式和大小等要求。下面将详细讲解这些功能的实现。 表单正则验证 什么是正则表达式? 正则表达式是一种语法,用于描述字符序列的模式。在 Web 开发中,我们通常使用正则表达式来判断用户输入的数据是否符合要求,例如邮箱格式,手机号格式等…

    JavaScript 2023年6月10日
    00
  • ES6新语法之解构实践指南

    ES6新语法之解构实践指南 什么是解构 解构是一种从数组或对象中提取数据的方式,它允许我们将属性或元素提取到不同的变量中。ES6中,我们可以通过解构来轻松地获取对象或数组中的属性或元素。 解构对象 解构一个对象意味着将对象的属性值复制到一个变量中。这是通过使用花括号和变量名称来完成的。 const person = { firstName: ‘John’, …

    JavaScript 2023年6月11日
    00
  • js最实用string(字符串)类型的使用及截取与拼接详解

    Js最实用String(字符串)类型的使用及截取与拼接详解 在 JavaScript 开发中,字符串(string)类型是非常重要的数据类型之一,也是我们日常开发中经常遇到的数据类型之一。在本篇攻略中,我们将对 JavaScript 中 String 类型的基本操作进行详细讲解,主要包括字符串的创建、截取和拼接等操作。 一、字符串的创建 1、使用单引号或双引…

    JavaScript 2023年5月19日
    00
  • JavaScript中? ?、??=、?.和 ||的区别浅析

    JavaScript中 ? ?、??=、?.和 ||的区别浅析 在JavaScript中,存在 ? ?、??=、?.和 ||四种运算符,他们都有着不同的用途。本文将会对这些运算符的使用场景进行详细的说明并配有示例。 1. ? ?运算符 ? ?运算符称为Nullish coalescing operator,它的作用是当左侧操作数为 undefined 或 n…

    JavaScript 2023年5月18日
    00
  • 分享AjaxPro或者Ajax实现机制

    分享AjaxPro或者Ajax实现机制的完整攻略可以分为以下几个部分: AjaxPro介绍 AjaxPro是一个能够帮助开发人员在使用Ajax时更加便捷的工具库。它能够自动地处理多个请求,避免多次发送请求造成的性能问题。同时,它也提供了更加直观、易懂的API接口,使得开发人员能够更加轻松地使用Ajax完成各种功能。 Ajax实现机制 Ajax的实现机制本质上…

    JavaScript 2023年6月11日
    00
  • JavaScript页面倒计时功能完整示例

    我将为您详细讲解如何实现Javascript页面倒计时功能的完整攻略,下面是完整步骤: 步骤一:准备工作 首先,在HTML页面中创建一个空白的 元素,用于展示倒计时。我们可以通过HTML代码将其嵌入到我们的页面中。 <div id="countdown"></div> 接下来,在JavaScript脚本中,我们需要…

    JavaScript 2023年5月27日
    00
  • jQuery使用ajax跨域请求获取数据

    下面详细讲解“jQuery使用ajax跨域请求获取数据”的完整攻略。 1. 什么是跨域请求? 跨域请求指的是向一个不同域名(或者协议、端口)的服务器发起请求,这种请求是不被允许的。比如我们的web页面在访问http://www.example.com的时候,去请求http://www.baidu.com就属于跨域请求。 2. jQuery ajax 跨域请求…

    JavaScript 2023年6月11日
    00
  • JavaScript 基础表单验证示例(纯Js实现)

    JavaScript 基础表单验证是前端开发中非常重要的一环,有了良好的表单验证可以避免用户输入错误数据,提高用户体验。本文将详细讲解如何基于纯 JavaScript 实现一个表单验证的示例。 准备工作 在开始之前,需要准备一个基本的 HTML 表单,用于演示验证的过程。我们首先创建一个 index.html 文件,代码如下: <!DOCTYPE ht…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部