課程
/前端開發(fā)
/JavaScript
/JavaScript進階篇
var plus=mydate.setTime(mydate.getTime()+ 2* 60 * 60 * 1000) ? ? 聲明個變量名出來的就是純數(shù)字,還是亂的。這是為什么呢?
2016-03-06
源自:JavaScript進階篇 7-5
正在回答
mydata是一個Date對象,它保存著一個時間。它有一個方法(C++中叫成員函數(shù))setTime(msec)可以修改它所保存的這個時間。因為你想要修改的時間以參數(shù)的形式傳遞給setTime(msec),即括號里的msec。
而你用一個變量是接收setTime的返回值,那么它得到的是什么呢?那要看Date對象是怎么保存時間的,它保存的是某個時間距1970年1月1日0時0分0秒的毫秒數(shù)。而你說的那是亂的數(shù)字其實不是別的,就是這個毫秒數(shù)。因為太大了,你一眼看不出它是什么,所以你覺得它是亂的,你可以試著聲明一個Date對象,把它的時間調(diào)到1970年1月1日0時0分0秒,再看下setTime的返回值你就會明白了。
其實setTime(msec)再修改了Date對象的時間的同時,也將這個時間以毫秒的形式返回了回來,所以你的plus接收到的正是這個毫秒數(shù)。不過你試了會發(fā)現(xiàn)差著8小時,這應(yīng)該與時區(qū)有關(guān)吧,可以去查下與UTC相關(guān)的東西。
以上為本人拙見,若有不對請批評指正!
__blank 提問者
yux_84
慕桂英3019087
舉報
本課程從如何插入JS代碼開始,帶您進入網(wǎng)頁動態(tài)交互世界
2 回答為什么不用變量存起當(dāng)前時間,就沒法推遲時間呢?
4 回答為什么在輸出的時候在變量后面用自加自減沒用
1 回答為什么我輸出的數(shù)字前面不會加0,這個數(shù)組沒用么
1 回答為什么兩個變量都要賦值才能輸出,而不是賦值一個就輸出一個?
3 回答為什么我的加法只是單純地把數(shù)字拼在一起而不是數(shù)值相加
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-03-06
mydata是一個Date對象,它保存著一個時間。它有一個方法(C++中叫成員函數(shù))setTime(msec)可以修改它所保存的這個時間。因為你想要修改的時間以參數(shù)的形式傳遞給setTime(msec),即括號里的msec。
而你用一個變量是接收setTime的返回值,那么它得到的是什么呢?那要看Date對象是怎么保存時間的,它保存的是某個時間距1970年1月1日0時0分0秒的毫秒數(shù)。而你說的那是亂的數(shù)字其實不是別的,就是這個毫秒數(shù)。因為太大了,你一眼看不出它是什么,所以你覺得它是亂的,你可以試著聲明一個Date對象,把它的時間調(diào)到1970年1月1日0時0分0秒,再看下setTime的返回值你就會明白了。
其實setTime(msec)再修改了Date對象的時間的同時,也將這個時間以毫秒的形式返回了回來,所以你的plus接收到的正是這個毫秒數(shù)。不過你試了會發(fā)現(xiàn)差著8小時,這應(yīng)該與時區(qū)有關(guān)吧,可以去查下與UTC相關(guān)的東西。
以上為本人拙見,若有不對請批評指正!