![](/img/trans.png)
[英]Javascript: converting date/time from miliseconds to human-readable string?
[英]Need help to resolve the issue when converting epoch date to human readable format - Javascript
我的Java腳本應用程序使用.net Web服務從后端獲取數據。 除日期/時間轉換外,一切正常。 我需要將服務返回的紀元日期轉換為用戶的本地瀏覽器日期。
Web服務以以下格式返回日期,
/Date(1335341422660-0500)/
這就是我將其轉換為可讀日期的方式,
我將連字符(-)后的所有內容都去掉,並將其余數據用於日期轉換
var dateVal=dateField.replace(/-.*\)/g,')');
var date = new Date(parseFloat(dateVal.substr(6)));
var dateArray=date.toString().split(" ");
if(dateArray.length>3){
timeZone=("("+dateArray[4])+")"
}
var month=date.getMonth() + 1;
var year=date.getFullYear();
var date=date.getDate();
var hours= date.getHours();
var offset=date.getTimezoneOffset();
var finalDateStr=(year+"-"+month+"-"+dateValue)+" "+hours+":"+
minutes+":"+seconds+" "+timeZone;
對於上述紀元值,預計日期為
4/24/2012 9:10:22 PM-該日期顯示在.net應用程序中,該應用程序實際上是源應用程序,只要創建/更新新項目,該應用程序就會將此日期插入MS SQL Server。 他們將SQL Server日期轉換為本地日期(使用.net)並將其顯示在UI中。
但是當我使用上述腳本形成日期時,我得到的值是
2012年4月25日4:10:22(EDT)(與上述日期相比增加了7小時)。
我不確定我在哪里錯了。有人可以幫助我解決這個問題嗎?
對於此類日期操作,您可能需要考慮使用Moment.js 。
不確定這是否是解決此問題的好方法...
這是我所做的,並且似乎可以正常工作。。。再次,我不認為這是一個簡單的解決方案,但是我檢查了各個時區(帶/不帶夏時制),並且似乎可以正常工作……
var dateVal=dateField.replace(/-.*\)/g,')');
var date = new Date(parseFloat(dateVal.substr(6)));
var dateArray=date.toString().split(" ");
var timeZone="(Local Time)";
if(dateArray.length>3){
timeZone=("("+dateArray[4])+")"
}
var date2=dateField.split("-");
var dateOffset=(date2[1].toString().replace(")","").replace("/",""));
if( date.toString().toUpperCase().indexOf("DT")!==-1){
date.setHours(date.getHours()-(parseFloat(parseFloat(dateOffset).toString().replace(/0*$/, ''))+2));
}else{
date.setHours(date.getHours()-(parseFloat(parseFloat(dateOffset).toString().replace(/0*$/, ''))+1));
}
var month=date.getMonth() + 1;
var year=date.getFullYear();
var dateValue=date.getDate();
var hours= date.getHours();
var minutes= date.getMinutes();
var seconds=date.getSeconds()
var finalDateStr=(year+"-"+month+"-"+dateValue)+" "+hours+":"+
minutes+":"+seconds+" "+timeZone;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.