想问下大家,获取当前日期,格式为2020-5-27 8:36。只能通过获取年、获取月、获取日、获取时、获取分,最后拼接吗?element-ui里有一个date组件可以通过format转换为想要的格式。js中有这样的方法吗?
原生只能拼接
new Date().toLocaleString('chinese',{hour12:false,year: 'numeric', month: 'numeric', day: 'numeric',
hour: 'numeric', minute: 'numeric'})
toLocaleString函数:里面可以传两个参数,第一个参数代表是时区,第二个参数是一个options对象,里面可以对要格式化的各种要求,上面的option可以满足你的要求了,资源下载具体可以查一下toLocaleString这个方法。
要实现格式化,得自己去写格式化函数,不过网上搜一下有很多,js本身未实现类似formate的函数。
在js原生中要进行日期格式转化得手写,通常做日期格式的转换是引入moment.js这个基本做到了所有关于日期时间的操作,不论是格式转换还是增加减少
原生js的看看Intl.DateTimeFormat对象
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat
function
time() {
var
time_ = $.session.get(
"work_token"
);
// 底部时间
var
time =
new
Date();
var
day = time.getDay();
//获取存储当前日期
var
weekday = [
"周天"
,
"周一"
,
"周二"
,
"周三"
,
"周四"
,
"周五"
,
"周六"
];
var
nowDay = weekday[day];
var
year = time.getFullYear();
var
mouth = time.getMonth() + 1;
var
ri = time.getDate();
var
hour = time.getHours();
var
min = time.getMinutes();
var
sec = time.getSeconds();
hour = String(hour);
min = String(min);
sec = String(sec);
if
(min.length == 1) {
var
a = `0${String(min)}`;
min = a;
}
if
(hour.length == 1) {
var
a = `0${String(hour)}`;
hour = a;
}
if
(sec.length == 1) {
var
a = `0${String(sec)}`;
sec = a;
}
var
time_value = `当前时间是${year}/${mouth}/${ri} ${hour}:${min}:${sec} 今天的星期为${nowDay}`;
return
time_value
},
原生js只可以使用拼接方法
感谢大家的回复