2017-07-17 63 views
0

,我有以下的Javascript代碼:「無效的日期」在JavaScript的getTime()

var dateMilliseconds = web3.toAscii(newArray[i]).substring(0, 13) 
console.log(dateMilliseconds) // returns 1500282374082 
var date = new Date(dateMilliseconds) 
console.log(date) // returns invalid date 

如果我嘗試var date = new Date(1500282374082)相反,它的工作原理 - 我應該如何傳球。正確的dateMilliseconds變量以及它應該是什麼類型?

+0

如果'dateMilliseconds'是一個字符串,你會得到無效的日期,它解析爲整數。 – azs06

回答

1

您需要將此作爲整數傳遞,而不是字符串。

可以使用+value伎倆把它轉換成一個整數:

var date = new Date(+dateMilliseconds) 
+0

這個「+」是怎麼處理的?如何將String轉換爲Integer? –

+1

@KillerDeath它是強制將字符串值轉換爲數字的幾種方法之一,請參閱https://stackoverflow.com/questions/1133770/how-do-i-convert-a-string-into-an-整數in-javascript – CBroe

+1

@ KillerDeath--它被稱爲[*一元運算符*](http://ecma-international.org/ecma-262/8.0/#sec-unary-plus-operator),它「*轉換它的操作數爲Number類型。*「 – RobG