如何將時間字串轉換為時間物件

螞蟻小編發表於2017-03-16

將一個具有時間格式的字串轉換為時間物件是常用的操作,下面就介紹一下如何實現此操作。

先看一個時間格式字串:

[JavaScript] 純文字檢視 複製程式碼
var str="2013-11-24";

上面是一個典型的具有時間格式的字串。

建議事先閱讀javascript Date()建構函式引數介紹一章節。 

如果想要使用時間物件的函式,那麼就必須實現轉換為時間物件,程式碼如下:

[JavaScript] 純文字檢視 複製程式碼
var str="2013-11-24";
var dateObj=new Date(str);
console.log(dateObj.getTime());

以上程式碼實現了我們的要求,將時間字串轉換成了物件。

但是上面的形式具有一定的瀏覽器相容性問題,IE8和IE8以下瀏覽器不支援。

Date()建構函式引數只有以下形式才會實現全相容效果:

[JavaScript] 純文字檢視 複製程式碼
new Date("2003/10/3")

也就是以反斜槓分割的形式。第一個生成時間物件的程式碼修改如下:

[JavaScript] 純文字檢視 複製程式碼
var str="2013-11-24";
var newStr=str.replace(/-/g,"/");
var dateObj=new Date(newStr);
console.log(dateObj.getTime());

以上程式碼可以相容所有的瀏覽器。再來看一段程式碼例項加強一下印象:

[JavaScript] 純文字檢視 複製程式碼
var str="2013-11-24 9:43:10";
var newStr=str.replace(/-/g,"/");
var dateObj=new Date(newStr);
console.log(dateObj.getTime());

在以上程式碼中,字串後半部分的時間字串可以不用考慮使用斜槓替換分割問題。

相關文章