2015-09-10 59 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

非常感谢:-) –