setTimeout() 方法的返回值是一个唯一的数值,这个数值有什么用呢?如果你想要终止setTimeout() 方法的执行,那就必须使用 clearTimeout() 方法来终止,而使用这个方法的时候,系统必须知道你到底要终止的是哪一个 setTimeout() 方法 (因为你可能同时调用了好几个 setTimeout() 方法),这样 clearTimeout() 方法就需要一个参数,这个参数就是 setTimeout() 方法的返回值 (数值),用这个数值来唯一确定结束哪一个 setTimeout() 方法。
if (timer) 如果存在这个值。
这个是一样的道理吧 其实按照正常的逻辑来推理应该比较清晰的
比如你这里面 如果id == 'play_prev'为真 那么执行第一个if里面的语句 包括下面的if (index < 0) index = 6;
如果id == 'play_prev'为假 那么执行else里面的语句 包括下面的 if (index > 6) index = 0;
else里面套if跟if、else是一样的,也是做判断