問個小問題
<script type="text/javascript">
var mydate = new Date();
document.write(mydate);
mytime=mydate.setTime(mydate.getTime()+2* 60 * 60 * 1000);
? ? ? ? ? ? ? ? ? ? ? ??
document.write(mytime);
</script>
mytime輸出為什么是一串數(shù)字
若是這樣就正常了
<script type="text/javascript">
var mydate = new Date();
document.write(mydate);
mydate.setTime(mydate.getTime()+2* 60 * 60 * 1000);
? ? ? ? ? ? ? ? ? ? ? ??
document.write(mydate);
</script>
為什么添加一個變量后就輸出的不一樣了呢
2014-12-09
說一說我的理解:
? Date對象是以毫秒數(shù)來保存日期并且以一定的形式對我們展現(xiàn)(根據(jù)瀏覽器的不同會有差別)。在第一段代碼中,你給mydate.setTime()賦給了一個變量,setTime這個方法是根據(jù)毫秒數(shù)來設置日期的,并且ECMAScript 標準化之后它是有返回值的,也就是說實際上你是把setTime方法的返回值賦給了mytime這個變量,而它的返回值就是它的參數(shù),而它的參數(shù)正是毫秒值,所以你加了變量所得到的那一串數(shù)字正是你給mydate設置的日期的毫秒值;現(xiàn)在來說一下為什么沒有變量輸出mydate就是有格式的字符串,最開始我提到過Date對象,正是因為mydate是一個Date對象呀,setTime方法給mydate設置了毫秒值,使mydate的時間有了改變,但是作為Date對象的展現(xiàn)形式是不會變的。個人拙見,不曉得有沒有誤導你!