**JS是单线程的语言:**同一时间只能做一件事。
同步和异步
既然JS是单线程的,我们就只能进行优化,才有了同步和异步的概念:
同步:就算做完一个再做另一个
异步:做一件事的时候,如果是判定为异步事件,就跳过先做下面的事。
实例:
输出还是1,2,3.定时器定时时间为0了,这是为什么呢?
当我们编译时:主线程的栈中:
但是由于异步任务中包括了回调(callback事件):包括了定时器。
所以此时异步任务放进消息队列(先进先出)里,最后才放进栈里面:
Lacation对象
URL的组成部分:
location对象的属性:
- href:如果想跳转页面,直接:location.href(“你想跳转的页面即可”)
- location:search:返回表单参数,前提是form标签里面的action=你想提交的页面
location的常用对象方法: