Javascript 如何设置toLocaleString的通用格式?
我使用JS函数Javascript 如何设置toLocaleString的通用格式?,javascript,angularjs,Javascript,Angularjs,我使用JS函数来设置日期格式。如何为所有客户端设置一种通用格式,如: 2015-10-29 20:00:00 我在PHP中通过-进行parsong,我认为您必须手动将其解析为该格式,这实际上并不太糟糕。toLocaleString()返回的日期格式为: MM/DD/YYYY, HH:MM:SS 以下是我的代码片段以帮助您: // Parse our locale string to [date, time] var date = new Date().toLocaleString('en-U
来设置日期格式。如何为所有客户端设置一种通用格式,如:
2015-10-29 20:00:00
我在PHP中通过-
进行parsong,我认为您必须手动将其解析为该格式,这实际上并不太糟糕。toLocaleString()返回的日期格式为:
MM/DD/YYYY, HH:MM:SS
以下是我的代码片段以帮助您:
// Parse our locale string to [date, time]
var date = new Date().toLocaleString('en-US',{hour12:false}).split(" ");
// Now we can access our time at date[1], and monthdayyear @ date[0]
var time = date[1];
var mdy = date[0];
// We then parse the mdy into parts
mdy = mdy.split('/');
var month = parseInt(mdy[0]);
var day = parseInt(mdy[1]);
var year = parseInt(mdy[2]);
// Putting it all together
var formattedDate = year + '-' + month + '-' + day + ' ' + time;
在做我提供的之前,请阅读并
var el=document.getElementById('dbg');
var log=function(val){el.innerHTML+=''+val+''};
var pad=函数(val){return('00'+val).slice(-2)};
Date.prototype.myFormattedString=函数(){
返回此。getFullYear()+'-'+
pad((this.getMonth()+1))+'-'+
pad(this.getDate())+“”+
pad(this.getHours())+':'+
pad(this.getMinutes())+':'+
pad(this.getSeconds())
;
}
var curDate=新日期();
日志(curDate)
日志(curDate.toLocalString())
日志(curDate.myFormattedString())
您尝试过什么?>我如何为所有客户端设置一种通用格式,例如tolocalesting
字符串Wed Oct 28 2015年10月28日00:00:42 GMT+0400(Γззззззазааззааа1072。我需要将其转换为MySQL的datetime
格式。那么您的代码是否总是返回格式MM/DD/YYYY,HH:MM:SS
?对于每个客户端?是的,它总是返回此格式。如果格式严格,则需要在某些月份和某些日期的前面追加0,因为parseInt会将月份更改为03到3。这可以通过如下检查轻松修复:如果(day<10){day='0'+day;}否,则尝试console.log((new Date()).tolocalString(“ko KR”);console.log((new Date()).toLocaleString(“en GB”);console.log((newdate()).toLocaleString(“ar EG”)代码>这是根据浏览器/计算机的区域设置。这就是为什么我将区域设置字符串设置为“en US”。如果没有向用户显示日期,则区域设置实际上并不重要。我不明白为什么要插入不同的区域设置,而所有区域设置都可以转换为要分析的单一格式。如果我们可以直接访问Date对象,为什么要分析Date.ToLocalString结果??