作用域
浏览器渲染:浏览器扫描html文档
webkit内核:html解释器 =>DOM tree CSS解释器 js引擎 渲染引擎
//作用域:词法环境 程序运行的环境
// es5:全局词法环境,局部词法环境
// 1.全局作用域:js解析器刚碰到js会产生一个全局作用域 这个作用域有一个存储对象window
//(可以将全局作用域中的变量和函数存到window)当页面关闭会销毁window
var a =1;
function fun(){
}
console.log(window);
//2.局部作用域(函数作用域)类似window的存储对象(看不见)存函数中的变量和方法
//执行完毕后 清空存储
//作用域链查找:底层作用域 里层向外层查找
// var b=10;
function fun1(){
console.log(b);//undefined
var b=66;//局部作用域
console.log(b);//66
}
fun1()
console.log(b);//找不到里层的b undefined
console.log(window);*/
//3.函数内部的变量,不使用var声明的是一个局部变量
function fun2(name){
/* var a=40,b =30;//从左向右声明 var a=40; var b =30 */
/* var a = b =30;//从右到左声明 b=30 ; var a=b; */
// console.log(a,b); //40 30
b=10; //函数内部的变量 不使用var声明 是一个局部变量
}
fun2('qx')
console.log(b);//10
定时器
清除定时器:clearTimeout(timer)
//执行一次
setTimeout(function(){
console.log('易烊千玺');
},1000);
//BOM
var timer =setTimeout(fun,3000)
//fun不带() 表示函数 带()执行函数
function fun(){
console.log('易烊千玺');
}
//clearTimeout(timer)清除定时器
// 一直执行
var timer1=setInterval(function(){
console.log('xq');
},1000)
clearInterval(timer1)//清除定时器
*/
//事件循环机制 enven-loop 同步 异步 (宏任务 回调函数 /微任务)
console.log(1);//1
setTimeout(function(){
console.log(5)//3
},0);
setInterval(function(){
console.log(3)//5
},108)
setTimeout(function(){
console.log(6)//4
},1080)
console.log(2)//2