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