2011-05-06 45 views

回答

1

如果您有字符串 「2011-05-03 12:00:00」,那麼只需使用

var month = "2011-05-03 12:00:00".split("-")[1];

,或者如果你希望能夠提取所有的部件很容易,用

var month = new Date("2011-05-03 12:00:00').getMonth();

1

如果你想要的號碼,只需使用.getMonth()。它會返回一個介於0和11之間的數字,因此您可能需要添加1 編輯:這適用於Chrome,但Firefox和IE9似乎無法識別日期格式)

var month=new Date('2011-05-03 12:00:00').getMonth() + 1; 

,或者如果你只是想前導零的字符串表示:

var month=('2011-05-03 12:00:00').split('-')[1]; 
+0

第一個代碼示例在我的firebug中不起作用。它看起來像它會... – pixelbobby 2011-05-06 16:30:10

+0

是的,我剛剛在一些瀏覽器中測試過,基於此更新了我的答案。其中一些似乎不認可這種特定的日期格式。 – kapa 2011-05-06 16:36:07

+0

JSFiddle努力的+1。非常好的巴茲。 – pixelbobby 2011-05-06 16:37:14

1

硒e我對你的帖子發表評論。如果只是string,你可以做一個簡單的分裂:
var d = "2011-05-03 12:00:00"; var m = d.split('-')[1]

否則這似乎工作:

new Date("2011-05-03 12:00:00").getMonth()+1

+0

沒有時間的第二個似乎沒有跨瀏覽器工作(在FF4中測試)。 – kapa 2011-05-06 16:37:38

+0

@baz:thx。更新。 – pixelbobby 2011-05-06 17:06:37

0

如何以不同的方式看一下:

如果你的SQL的select語句也選擇MONTH(timestamp)然後將其存儲在JSON響應作爲JSON對象的附加字段。由於看起來getitng這個月在所有瀏覽器之間並不是普遍的,所以這可能是最通用/最簡單的方法,解析更少,錯誤更少。

0

請勿split該字符串。你扔掉大部分結果,所以這太浪費了。

Date同樣的對象(但更糟糕)。

使用此爲偉大的勝利:

alert('2011-05-03 12:00:00'.substr(5,2)); 
// Result: '05' 
相關問題