javascript裡,要取得當前時間要用Date()函數,如果要指定特定日期-像是今天的前一天或前N天的話,就要用Date(Y,m,d,H,i,s)的方式取得,像這樣:
var now=new Date(); //先取得今天的日期
var day1=new Date(now.getFullYear(),now.getMonth(),now.getDate()-1,0,0,0); //再用今天的日期(now)為基準,取得昨天的日期
這個範例裡因為只是要抓昨天的日期,所以getDate是減1,且時、分、秒也以零帶過
要注意的是,如果要取得day1的月份,用getMonth出來後,要再加1,因為getMonth回傳值是0到11,1月是0
如果要把這個day1的年月日組合成20090521這樣的值,就要把年月日取出相加
但是如果直接用day1.getFullYear()+day.getMonth()+1+day.getDate()相加,會得到一個4位數的數字,因為javascript會認為你要算2009+5+21,這時候就要運用到數字轉字串的函數-toString(),像這樣day1.getFullYear().toString(),所以完整的語法應該是:
day1.getFullYear().toString()+(day1.getMonth()<9?"0":"")+(day1.getMonth()+1).toString()+day1.getDate().toString()
其中(day1.getMonth()<9?"0":"")的意思是如果day1.getMonth()的值是0到8,那就加一個0在前面,因為getMonth傳回0到8是指1到9月
好的,那文字轉數字用在哪裡呢?
嗯,這個問題……其實只是順便題一下,要用parseInt(),只是toString是用「數字變數.toString()」,parseInt要用「parseInt(字串變數)」這樣
因為這個其實我不常用也沒特別記,每次要用就要重新孤狗也是很麻煩,一起入庫比較方便囉~
2009年5月22日 星期五
javascript日期運算&文字轉數字&數字轉文字
於台灣時間 上午10:52 標籤: javascript, KM, tech
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言