2015-09-10 86 views
2

因此,我前幾天在Stack Overflow中找到了一個函數,我試圖理解它,因爲我想調整它並將其應用到我的項目中。這是Murplyx的一個功能,它在這個問題的第三個答案中:find the time left in a setTimeout()?用兩個值聲明三個變量?

當我開始閱讀函數時,我的疑惑即刻開始。第一個陳述是var id, started, remaining = delay, running。這是什麼意思?另外,爲什麼最後沒有任何語句有分號?最後一個問題可能是愚蠢的,但我一直建議使用分號,否則它將無法工作。

謝謝任何​​人的答案! :-)

+2

對於'分號'部分http://stackoverflow.com/questions/444080/do-you-recommend-using-semicolons-after-every-statement-in-javascript –

回答

6

var id, started, remaining = delay, running; 

是相同的只是

var id; 
var started; 
var remaining = delay; 
var running; 

這是一個速記一次聲明多個變量。例如,對於分號,Javascript有一些名爲的自動分號插入(ASI),參見this question。不是我會推薦的一種風格,因爲它容易讓人無意識地陷入怪癖,但是你的里程可能會有所不同。

+0

非常感謝:-) –