* 数字方法的常用方法:
*
* 1. random
* * 语法: Math.random()
* * 作用: 得到一个0~1之间的随机数, 包含0,不包含1
*
* 2. round
* * 语法: Math.round()
* * 作用: 将数据 四舍五入取整
*
* 3. ceil
* * 语法: Math.ceil()
* * 作用: 将数据 向上取整
*
* 4. floor
* * 语法: Matn.floor()
* * 作用: 将数据 向下取整
*
* 5. abs
* * 语法: Math.abs()
* * 作用: 取数据的绝对值
* 6. sqrt
* * 语法: Math.sqrt()
* * 作用: 求平方根
*
* 7. pow
* * 语法: Math.pow(基数, 幂)
* * 作用: 求一个基数的 X 次幂
*
* 8. max
* * 语法: Math.max(数据1, 数据2, 数据3, ...)
* * 作用: 求参数中 的 最大值
*
* 9. min
* * 语法: Math.min(数据1, 数据2, 数据3, ...)
* * 作用: 求参数中 的 最小值
*
* 10. PI
* * 语法: Math.PI
* * 作用: 求圆周率
**
* 计时器 (setInterval)
* * 语法: setInterval(function(){每次执行定时器时要做的事}, 时间) 时间的单位是毫秒
* * 返回值: (时间ID) ---> 值取决于你当前的定时器是这个页面的第几个定时器, 返回值可以用于关闭定时器
* * 关闭定时器: clearInterval(时间ID)
*
* 倒计时器 (setTimeout)
* * 语法 setTimeout(function () {倒计时时间满足时, 要执行的一段代码}, 时间) 时间的单位是毫秒
* * 返回值: (时间ID) ---> 值取决于你当前的定时器是这个页面的第几个定时器, 返回值可以用于关闭定时器
* * 关闭倒计时器: clearTimeout(时间ID)
*
* 关闭定时器: clearInterval 和 clearTimeout
* 正常来说 两个方法可以混用, 不会出错,
* 但是根据语义来说 clearTimeout 用于关闭 setTimeout; clearInterval 用于关闭 setInterval
* 简单了解异步代码
*
* JS 的运行 是单线程的(执行代码从第一行开始,往下执行, 上一行不结束, 不会运行下一行代码)
*
*
* 但是万一上一行代码比较耗时(5S), 那么我下一行代码就需要等待5S
*
* 但是JS也分为 异步任务(今天学习的两个定时器)与同步任务
*
* JS 在运行的时候, 会按照从上到下的顺序执行代码, 但是会先把所有的同步任务先执行, 等所有的同步任务执行完毕, 在执行异步任务