单线程容易被阻塞 / 同步 会很耗时
异步 后续的任务无需等待
定时器是异步的,同步代码和异步代码同时存在的时候,同步代码会先执行,然后异步代码再执行
使用定时器一定要注意离开页面的时候要清除,回到页面再继续启动
定时任务:隔固定时间做某件事(一次性)、无限次的循环做
定时器调用这个函数不用传参,直接写函数名即可,
定时器调用这个函数要传参,必须接受一个回调
第二参数是时间,表示1秒(1000毫秒)后调用一次,然后每隔1秒调用一次,第一个参数
(2)、 第一个参数fn 与 fn() 区别,fn()会不等延迟,直接调用,后面不在调用
定时器是事件执行的时候,最好在前面先清除定时器一次,因为每点击一次都是生成一个新的定时器
第二参数是时间,表示1秒(1000毫秒)后调用一次,然后不再调用
5、当我们的定时器第一个参数为一个函数的时候,这个函数又是一个立即执行的函数,可以把第一个参数用单引号引起来,它会视作一个需要定时器来调用的函数
6、定时器的 this
指向问题
由
setTimeout()
调用的代码运行在与所在函数完全分离的执行环境上。这会导致,这些代码中包含的this
关键字在非严格模式会指向window
(或全局)对象,严格模式下为undefined
,这和所期望的this
的值是不一样的
解决这个问题可以使用
bind
来修改函数的this
指向问题
Math对象用于执行数学任务 Math对象 无需new,直接调用Math方法就行
封装 随机 X至Y之间的数
方法会将数字的小数部分去掉,只保留整数部分。
传入该方法的参数会被隐式转换成数字类型。
案例3:随机色卡(随机颜色讲解)
“
度
”的定义是,“两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。当这段弧长正好等于圆周长的360分之一时,两条射线的夹角的大小为1度。(如图1)
弧度
的定义是:两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。当这段弧长
正好等于圆的半径时
,两条射线的夹角大小为1弧度
。(如图2)
角所对的
弧长是半径的几倍
,那么角的大小就是几弧度
。
它们的关系可用下式表示和计算:
圆的周长是半径的 2π倍
,所以一个周角(360度)是2π弧度
。
三、度跟弧度之间的换算
据上所述,一个平角是 π 弧度。
1、Math.sin(
弧度)
正弦 对边比斜边 一个以弧度
表示的角
Math.PI
即π
是圆的周长和它的直径之比。这个值近似为 3.793
案例4:圆周运动
(三角函数讲解)