JS:格式化时间的方法,及获取指定格式的方法

news/2024/7/19 14:13:41 标签: js

简介

一些关于时间的获取方法

具体实现

  1. 以下是获取时间中部分内容的方法
js">let time = new Date();
time.getYear(); //获取当前年份
time.getFullYear(); //获取完整的年份(4位,1970-???)
time.getMonth(); //获取当前月份(0-11,0代表1月)
time.getDate(); //获取当前日(1-31)
time.getDay(); //获取当前星期X(0-6,0代表星期天)
time.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
time.getHours(); //获取当前小时数(0-23)
time.getMinutes(); //获取当前分钟数(0-59)
time.getSeconds(); //获取当前秒数(0-59)
time.getMilliseconds(); //获取当前毫秒数(0-999)
time.toLocaleDateString(); //获取当前日期
time.toLocaleTimeString(); //获取当前时间
time.toLocaleString( ); //获取日期与时间

以下是打印出来的结果

121
2021
 8
29
3
1632900265327
15
24
25
327
2021/9/29
下午3:24:25
2021/9/29 下午3:24:25

2.获取指定日期的前一天 ,注意IOS中,最好把 ‘-’ 转换为 ‘/’

js">原生JS// 方法1 
date 代表指定的日期,格式:2018-09-27 
d 传-1表始前一天,传1表始后一天 
getNextDate(date,day); 

function getNextDate(date,day) {   
 var dd = new Date(date); 
 dd.setDate(dd.getDate() + day); 
 var y = dd.getFullYear(); 
 var m = dd.getMonth() + 1 < 10 ? "0" + (dd.getMonth() + 1) : dd.getMonth() + 1; 
 var d = dd.getDate() < 10 ? "0" + dd.getDate() : dd.getDate(); 
 return y + "-" + m + "-" + d; 
}; 

// 方法 2
getLastDayFun(date) { 
 date = new Date(date); 
 date = +d - 1000 * 60 * 60 * 24; 
 date = new Date(date);// 格式化 
 let m = date.getMonth() + 1; 
 m = m < 10 ? ("0" + m) : m; 
 let day = date.getDate(); 
 day = day < 10 ? ("0" + day) : day; 
} 

// 方法3 简化版
new Date(new Date().getTime() - 86400000) 
  1. 把时间格式转换为 yyyy/MM/dd h: m: s

注意:为什么是yyyy不是YYYY?
y:year-of-era;正正经经的年,即元旦过后;Y:week-based-year;只要本周跨年,那么这周就算入下一年;就比如说今年(2019-2020) 12.31 这一周是跨年的一周,而 12.31 是周二,那使用 YYYY 的话会显示 2020,使用 yyyy 则会从 1.1 才开始算是 2020

js"> let newD = ("2014-01-01 10:15:00").replace(/-/g,"/");
  1. 对时间进行格式化的函数封装
js">// 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
// 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
// 例子:
// (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
// (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
handleTime() {
  let time = new Date();
  let dateTime = this.formateDateTime(time, 'yyyy-MM-dd');
  console.log(dateTime); // 2021-09-29
  let dateTime2 = this.formateDateTime(time, 'yyyy-MM-dd hh:mm:ss');
  console.log(dateTime2); // 2021-09-29 15:34:22
},
formateDateTime(time, fmt) {
  let o = {
    'M+': time.getMonth() + 1, // 月份
    'd+': time.getDate(), // 日
    'h+': time.getHours(), // 小时
    'm+': time.getMinutes(), // 分
    's+': time.getSeconds(), // 秒
    'q+': Math.floor((time.getMonth() + 3) / 3), // 季度
    S: time.getMilliseconds(), // 毫秒
  };
  if (/(y+)/.test(fmt)) {
    fmt = fmt.replace(RegExp.$1, (time.getFullYear() + '').substr(4 - RegExp.$1.length));
  }
  for (var k in o) {
    if (new RegExp('(' + k + ')').test(fmt))
      fmt = fmt.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length));
  }
  return fmt;
},

最后

觉得有用的朋友请用你的金手指点一下赞,或者评论留言一起探讨技术!


http://www.niftyadmin.cn/n/1867206.html

相关文章

java数据类型(类型及转换)

java数据类型 基本数据类型&#xff08;8种&#xff09; 整数类型 byte 一个字节&#xff1a;-128~127short 两个字节int 四个字节long 八个字节 浮点类型 float 四个字节double 八个字节 字符类型 char 两个字节 boolean类型 boolean 一位 引用数据类型 类接口数组…

170816 Ubuntu-Nvidia CUDA+Driver+cuDNN installation-Titan Xp

参考文献&#xff1a; Ubuntu 16.04 Nvidia 显卡驱动 Cuda 8.0 &#xff08;问题总结 解决方案) 深度学习Keras快速开发入门 前言血泪史&#xff1a; 除非有完全把握&#xff0c;不建议安装最新驱动&#xff0c;可通过下面代码查看适合自己电脑的Nvidia驱动。网上大部分说…

JS:关于Promise的使用

简介 记录一些关于Promise的使用。 Promise 的文档说明见 > 文档地址 使用 类似条件判断的 conditionalJudgment() {return new Promise((resolve, reject) > {let a 1;if (a) {resolve(success);} else {reject(new Error(a is not meet the conditions));}}).then…

java方法的重载和重写

方法的重载 重载是什么&#xff1f; 重载就是在一个类中&#xff0c;有相同的函数名称&#xff0c;但形参不同的函数 方法重载的规则 方法名称必须是一样的参数列表不同&#xff08;参数个数、参数类型、参数排列顺序不同…&#xff09; public class Deemo {public stati…

VUE:原生input进行中文输入时触发的事件

简介 这里是关于 原生input 在 Vue 中的一些事件方法。 具体过程 1.中文输入时触发不常见的两个事件&#xff1a;compositionstart、compositionend 1.1 代码如下 <template><div><inputv-model"inputVal"input"inputChange"compositi…

VUE:Vue2/Vue3全局引入.lees文件的CSS变量

简介 记录关于全局引入less变量的方式之一。 具体实现 1.先安装插件 检查package.json 中已有哪些 less 插件 style-resources-loader vue-cli-plugin-style-resources-loader less-loader less一键安装命令 npm install style-resources-loader vue-cli-plugin-style-re…

VUE:修改项目运行后,网页中的页签标题与Logo

简介 记录关于vue项目运行后&#xff0c;如何修改网页中的页签标题、logo。 具体实现 1.方式一&#xff08;图标、标题&#xff09;&#xff1a;public/index.htm 简单粗暴&#xff0c;直接修改 public/index.html 中的 link 与 title logo.png就是自己加在 public目录下 …

java冒泡排序和稀疏数组

冒泡排序、稀疏数组 1.冒泡排序 两层循环&#xff0c;外层记录冒泡轮数&#xff0c;里层依次比较 时间复杂度&#xff1a;O(n^2) 步骤&#xff1a;&#xff08;以升序为例&#xff09; 比较数组中两个相邻的元素&#xff0c;第一个数比第二个数大&#xff0c;则交换位置&a…