js 时间戳的转化,js 日期转成标准字符串,日期格式的相互转化
1.时间的获取
var myDate = new Date();
myDate.getYear(); //获取当前年份(2位)
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月) // 所以获取当前月份是myDate.getMonth()+1;
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
var mytime=myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString( ); //获取日期与时间
2.获取时间戳
JS获取当前时间戳的方法-JavaScript 获取当前毫秒时间戳有以下三种方法: var timestamp =Date.parse(new Date()); 结果:1280977330000 //不推荐; 毫秒改成了000显示 var timestamp =(new Date()).valueOf(); 结果:1280977330748 //推荐; var timestamp=new Date().getTime(); 结果:1280977330748 //推荐;
注意:js中单独调用new Date(); 显示这种格式 Mar 31 10:10:43 UTC+0800 2012
但是用new Date() 参与计算会自动转换为从1970.1.1开始的毫秒数
3.将字符串形式的日期转换成日期对象展示
var strTime="2019-02-01"; //字符串日期格式
var date= new Date(Date.parse(strTime.replace(/-/g, "/"))); //转换成Data();
new Date() ; //参数可以为整数; 也可以为字符串; 但格式必须正确 new Date(2019,1,1); //正确 new Date("2019/1/1"); //正确 new Date("2019-1-1"); //正确 new Date( year, month, date, hrs, min, sec) 按给定的参数创建一日期对象
参数说明:
year的值为:需设定的年份-1900。例如需设定的年份是1997则year的值应为97,即1997-1900的结果。所以Date中可设定的年份最小为1900;
month的值域为0~,0代表1月,11表代表12月;
date的值域在1~31之间;
hrs的值域在0~23之间。从午夜到次日凌晨1点间hrs=0,从中午到下午1点间hrs=12;
min和sec的值域在0~59之间。
例 Date day=new Date(11,3,4);
//day中的时间为:04-Apr-11 12:00:00 AM
另外,还可以给出不正确的参数。
例 设定时间为1910年2月30日,它将被解释成3月2日。
Date day=new Date(10,1,30,10,12,34);
System.out.println("Day's date is:"+day);
//打印结果为:Day's date is:Web Mar 02 10:13:34 GMT+08:00 1910
4.日期格式转为日期标准字符串:年月日
var formatDate = function (date) {
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? '0' + m : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
return y + '-' + m + '-' + d;
};
5.js方法返回值:年月日 时分秒
var formatDateTime = function (date) {
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
var h = date.getHours();
h=h < 10 ? ('0' + h) : h;
var minute = date.getMinutes();
minute = minute < 10 ? ('0' + minute) : minute;
var second=date.getSeconds();
second=second < 10 ? ('0' + second) : second;
return y + '-' + m + '-' + d+' '+h+':'+minute+':'+second;
}
调用:formatDate(new Date())
6.获取固定时间的时间戳,获取当前时间看上面2
let data ="2019-02-01"
var timestamp1 = Date.parse(new Date(data));//转成的时间戳是年月日 时分秒 把毫秒改成000显示
var timestamp2 = (new Date(data)).valueOf();//转成的时间戳是年月日 时分秒毫秒
var timestamp3 = new Date(data).getTime();//转成的时间戳是年月日 时分秒毫秒
7.时间戳转成日期
function format(shijian){
let date = new Date(shijian)
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
var h = date.getHours();
h=h < 10 ? ('0' + h) : h;
var minute = date.getMinutes();
minute = minute < 10 ? ('0' + minute) : minute;
var second=date.getSeconds();
second=second < 10 ? ('0' + second) : second;
return y + '-' + m + '-' + d+' '+h+':'+minute+':'+second;
},
format(时间戳)
8.封装时间日期格式的转化
timeStamp:时间戳,
type :根据自己的需要设置格式: Y-M-D Y-M-D H 等等
auto :为false是转化格式,为true是输入之前到今天的此时时间
formatDate(timeStamp, type = 'Y-M-D H:I:S', auto = true) {
let time = (timeStamp + '').length === 10 ? new Date(parseInt(timeStamp) * 1000) : new Date(parseInt(timeStamp));
let _year = time.getFullYear();
let _month = (time.getMonth() + 1) < 10 ? '0' + (time.getMonth() + 1) : (time.getMonth() + 1);
let _date = time.getDate() < 10 ? '0' + time.getDate() : time.getDate();
let _hours = time.getHours() < 10 ? '0' + time.getHours() : time.getHours();
let _minutes = time.getMinutes() < 10 ? '0' + time.getMinutes() : time.getMinutes();
let _secconds = time.getSeconds() < 10 ? '0' + time.getSeconds() : time.getSeconds();
let formatTime = '';
let distinctTime = new Date().getTime() - time.getTime(); if (auto) {
if (distinctTime <= (1 * 60 * 1000)) {
// console.log('一分钟以内,以秒数计算');
let _s = Math.floor((distinctTime / 1000) % 60);
formatTime = _s + '秒前';
} else if (distinctTime <= (1 * 3600 * 1000)) {
// console.log('一小时以内,以分钟计算');
let _m = Math.floor((distinctTime / (60 * 1000)) % 60);
formatTime = _m + '分钟前';
} else if (distinctTime <= (24 * 3600 * 1000)) {
// console.log('一天以内,以小时计算');
let _h = Math.floor((distinctTime / (60 * 60 * 1000)) % 24);
formatTime = _h + '小时前';
} else if (distinctTime <= (30 * 24 * 3600 * 1000)) {
let _d = Math.floor((distinctTime / (24 * 60 * 60 * 1000)) % 30);
formatTime = _d + '天前';
// console.log('30天以内,以天数计算');
} else {
// 30天以外只显示年月日
formatTime = _year + '-' + _month + '-' + _date;
}
} else { switch (type) {
case 'Y-M-D H:I:S':
formatTime = _year + '-' + _month + '-' + _date + ' ' + _hours + ':' + _minutes + ':' + _secconds;
break;
case 'Y-M-D H:I:S zh':
formatTime = _year + '年' + _month + '月' + _date + '日 ' + _hours + ':' + _minutes + ':' + _secconds;
break;
case 'Y-M-D H:I':
formatTime = _year + '-' + _month + '-' + _date + ' ' + _hours + ':' + _minutes;
break;
case 'Y-M-D H':
formatTime = _year + '-' + _month + '-' + _date + ' ' + _hours;
break;
case 'Y-M-D':
formatTime = _year + '-' + _month + '-' + _date;
break;
case 'Y-M-D zh':
formatTime = _year + '年' + _month + '月' + _date + '日';
break;
case 'Y-M':
formatTime = _year + '-' + _month;
break;
case 'Y':
formatTime = _year;
break;
case 'M':
formatTime = _month;
break;
case 'D':
formatTime = _date;
break;
case 'H':
formatTime = _hours;
break;
case 'I':
formatTime = _minutes;
break;
case 'S':
formatTime = _secconds;
break;
default:
formatTime = _year + '-' + _month + '-' + _date + ' ' + _hours + ':' + _minutes + ':' + _secconds;
break;
}
} // 返回格式化的日期字符串
return formatTime;
},
以上的内容是自己经过验证,如有问题大家可以可以留言
参考网址:https://blog.csdn.net/qq_39759115/article/details/78893853,https://blog.csdn.net/qq_39759115/article/details/78893853
js 时间戳的转化,js 日期转成标准字符串,日期格式的相互转化的更多相关文章
- qrcode.js插件将你的内容转换成二维码格式
---qrcode.js插件将你的内容转换成二维码格式--- 我之前一直想知道二维码是怎么生成,所以就了解了一下, 最后还是不知道它的原理, 但是,我知道怎么生成. 现在就让我带你制作一个你喜爱的二维 ...
- Excel将秒转换成标准的时间格式HH:MM:SS
Excel将秒转换成标准的时间格式HH:MM:SS 比如120秒,转换成00:02:00 Excel公式为: =TEXT(A1/86400,"[hh]:mm:ss") A1为秒数据 ...
- js如何将选中图片文件转换成Base64字符串?
如何将input type="file"选中的文件转换成Base64的字符串呢? 1.首先了解一下为什么要把图片文件转换成Base64的字符串 在常规的web开发过程中,大部分上传 ...
- js使用工具将表单封装成json字符串传到后台,js截取字符串(学生笔记)
<script src="js/jquery.min.js"></script> <script src="https://cdn.boot ...
- excel转换日期格式,将yyyymmdd类型日期转换成yyyy-mm-dd等日期类型方法
源数据日期格式:例如: 20160420 20160422 目标日期格式类型: 2016-4-20 2016-4-22 或 2016/04/20 2016/04/22 方法: 一.选中相应数据的单元格 ...
- js最简洁的时间对象转成时间字符串的方法
getTimestr(val){ let temp = val.toLocaleString() if(temp.match(/[\u4e00-\u9fa5]/g)[0]=="上" ...
- SQLServer 将日期改造成标准日期格式(如: 2016/6 ->201606)
同事给了份Excel 数据,导到数据库之后再查出来时发现顺序不好弄.于是想从数据源中做处理. 由于数据存在,年/月 与 年/月/日 的格式不好用datetime保存,于是用varchar保存. 数据处 ...
- JS数组转成json字符串的注意事项
在js中常常会将一个数组转成json字符串发送给后端. 这时候在定义数组数据结构的时候需要格外注意,意味json中是有集合和对象的区别的. 集合的定义是[];对象的的定义是{}. 这时候,在创建数组时 ...
- JS框架_(Qrcode.js)将你的内容转换成二维码格式
百度云盘 传送门 密码:304e 输入网址点击按钮生成二维码,默认为我的博客首页 二维码格式演示 <!DOCTYPE html> <html lang="en"& ...
随机推荐
- itunes win10应用商店安装 升级固件路径
win + r 在运行中输入: %localappdata%\Packages\AppleInc.iTunes_nzyj5cx40ttqa\LocalCache\Roaming\Apple Compu ...
- mysql中查看表结构的sql语句
mysql查看表结构命令,如下: desc 表名;show columns from 表名;describe 表名;show create table 表名; use information_sche ...
- HDU 4055 Number String (计数DP)
题意:由数字1到n组成的所有排列中,问满足题目所给的n-1个字符的排列有多少个,如果第i字符是‘I’表示排列中的第i-1个数是小于第i个数的. 如果是‘D’,则反之. 析:dp[i][j] 表示前 i ...
- 关于利用word发布文章到博客
目前大部分的博客作者在写博客这件事情上都会遇到以下3个痛点:1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.2.发布到博客或公众号平台 ...
- 团体程序设计天梯赛L1-024 后天 2017-03-22 17:59 68人阅读 评论(0) 收藏
L1-024. 后天 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 如果今天是星期三,后天就是星期五:如果今天是星期六,后天就 ...
- Android dex分包方案和热补丁原理
一.分包的原因: 当一个app的功能越来越复杂,代码量越来越多,也许有一天便会突然遇到下列现象: 1. 生成的apk在2.3以前的机器无法安装,提示INSTALL_FAILED_DEXOPT 2. 方 ...
- C++ 动态分配二维和三维数组
目的:熟悉c++动态内存分配 描述:使用c++程序定义动态数组类,使用new和delete操作符实现动态二维数组和三维数组的定义 //main.cpp //主程序类 #include <iost ...
- ZOJ3705:Applications
Recently, the ACM/ICPC team of Marjar University decided to choose some new members from freshmen to ...
- NYTimes Objective-C 编程风格指南
转自eseedo的博客 [微博] NYTimes Objective-C 编程风格指南.来源:https://github.com/NYTimes/objective-c-style-guide ...
- 萌新web前端从零开始(1)——计算机入门
前言:这是一个萌新从零开始的学习之路,与大家分享自己的看法与见解,还请指出错误与遗漏点方便改正. 1.认识计算机. 计算机语言常见的有C,PHP,Ruby,Java,C#,Basic,JS,C++等, ...