js时间格式转换
文章目录1.获取日期对象:2.日期对象转时间戳:3.时间戳转日期对象:4.字符串转日期对象'4.1:2020-02-23'4.2:'2020/02/23'4.3:'2020,02,23'4.4:不符合现实逻辑的时间2020年2月30日,它将被解释成3月2日。5.日期对象转时间字符串:2020-03-01 00:00:006.时间戳和时间字符串互转ps1:直接使用new Date()获取日期对象:p
·
文章目录
1.获取日期对象:
time = new Date() //Mon Aug 31 2020 15:43:25 GMT+0800 (中国标准时间)
2.日期对象转时间戳:
timeStamp = time.getTime() //1598860299972
3.时间戳转日期对象:
time = new Date(timeStamp)
4.字符串转日期对象’
4.1:2020-02-23’
(网上都说这个不对,但是我试了一直时可以的,不知道是不是忽略了什么)
timeString = '2020-02-23'
time = new Date(timeString)
console.log("new Date('2020-02-23')::", time)
4.2:‘2020/02/23’
timeString = '2020/02/23'
time = new Date(timeString)
console.log("new Date('2020/02/23')::", time)
4.3:‘2020,02,23’
timeString = '2020,02,23'
time = new Date(timeString)
console.log("new Date('2020,02,23')::", time)
4.4:不符合现实逻辑的时间2020年2月30日,它将被解释成3月2日。
timeString = '2020,2,30 12:32:23'
time = new Date(timeString)
console.log("new Date('2020,2,30')::", time) //Sun Mar 01 2020 12:32:23 GMT+0800 (中国标准时间)
5.日期对象转时间字符串:2020-03-01 00:00:00
let formatDateTime = function (date) {
var y = date.getFullYear();
var m = date.getMonth() + 1;//注意这个“+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;
};
timeString = formatDateTime(time)
console.log('timeString:', timeString) // 2020-03-01 00:00:00
6.时间戳和时间字符串互转
6.1.使用时间对象做中间介质
6.1.时间戳和时间字符串互转:如果是vue项目,可以引入moment.js,时间戳直接转时间字符串
注意要导入↓
import moment from 'moment'
timeString = moment(timeStamp).format('YYYY-MM-DD HH:mm:ss');
console.log('timeString-moment.js', timeString) // 2020-08-31 17:55:55
详细:https://blog.csdn.net/halo1416/article/details/83620022
ps1:直接使用new Date()获取日期对象:
time = new Date() //Mon Aug 31 2020 15:43:25 GMT+0800 (中国标准时间)
但是用new Date() 参与计算会自动转换为从1970.1.1开始的毫秒数(即时间戳)
timeStamp = new Date()-1000 //1598860299972
ps2:获取时间戳的三种方式
var timestamp =Date.parse(new Date()); // 结果:1280977330000 不推荐; 毫秒改成了000显示
var timestamp =(new Date()).valueOf(); // 结果:1280977330748 推荐;
var timestamp=new Date().getTime(); // 结果:1280977330748 推荐;
ps3:全部代码段
let time, timeStamp, timeString;
//1.获取日期对象:
time = new Date() //Mon Aug 31 2020 15:43:25 GMT+0800 (中国标准时间)
//2.日期对象转时间戳:
timeStamp = time.getTime() //1598860299972
//3.时间戳转日期对象:
time = new Date(timeStamp)
// 4.1.字符串转日期对象'2020-02-23'(网上都说这个不对,开始我试了一直时可以的,不知道是不是忽略了什么
timeString = '2020-02-23'
time = new Date(timeString)
console.log("new Date('2020-02-23')::", time)
// 4.2.字符串转日期对象'2020/02/23'
timeString = '2020/02/23'
time = new Date(timeString)
console.log("new Date('2020/02/23')::", time)
// 4.3.字符串转日期对象'2020,02,23'
timeString = '2020,02,23'
time = new Date(timeString)
console.log("new Date('2020,02,23')::", time)
// 4.4.不符合现实逻辑的时间2020年2月30日,它将被解释成3月2日。
timeString = '2020,2,30 12:32:23'
time = new Date(timeString)
console.log("new Date('2020,2,30')::", time) //Sun Mar 01 2020 12:32:23 GMT+0800 (中国标准时间)
// 5.日期对象转时间字符串:2020-03-01 00:00:00
let 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;
};
timeString = formatDateTime(time)
console.log('timeString:', timeString) // 2020-03-01 00:00:00
//直接使用new Date()获取日期对象:
time = new Date() //Mon Aug 31 2020 15:43:25 GMT+0800 (中国标准时间)
// 但是用new Date() 参与计算会自动转换为从1970.1.1开始的毫秒数(即时间戳)
timeStamp = new Date()-1000 //1598860299972
//6.1.时间戳和时间字符串互转:使用时间对象做中间介质
//6.1.时间戳和时间字符串互转:如果是vue项目,可以引入moment.js,时间戳直接转时间字符串
// 注意要导入↓
// import moment from 'moment'
timeString = moment(timeStamp).format('YYYY-MM-DD HH:mm:ss');
console.log('timeString-moment.js', timeString) // 2020-08-31 17:55:55
//ps:获取时间戳的三种方式
var timestamp =Date.parse(new Date()); // 结果:1280977330000 不推荐; 毫秒改成了000显示
var timestamp =(new Date()).valueOf(); // 结果:1280977330748 推荐;
var timestamp=new Date().getTime(); // 结果:1280977330748 推荐;
更多推荐
已为社区贡献1条内容
所有评论(0)