12单选
1、git常用命令有哪些;
2、
var a=1; var b={ n=1; } function changeA(num){ num=3; } function changeB(num){ num.n=3; } changeA(); changeB(); console.log(a,b.n); //1,3
3、
function a(){ } console.log(a()); //undefined
6多选
1、display常用值有哪些;
2、promise常用方法有哪些;
3、常用行内标签有哪些(dd);
4、HTML5新元素,article, big(HTML5不支持);
5、content-type有几种取值;
3填空
1、改变this指向的方法有哪些;
apply, bind, call
2、盒模型四部分
margin, padding, border, content
3、
const a={ n : 1; b : ()=>{ console.log(this.n); } } a.b();//undefined
4简答
1、字符串去重,给定字符串,输出无重复的字符串,顺序不变;
function a(str){ let str1=[...str]; let str2=new Set(str1); console.log(str2); } a('AASDGFA');
2、从浏览器输入url到页面加载完成发生了什么;
(1)DNS解析,将域名解析成IP地址,会有检查缓存的过程,若有,浏览器直接开始渲染页面
(2)TCP连接,三次握手:浏览器让服务器准备好,它要发送请求了,服务器告诉浏览器,它准备好了,浏览器告诉服务器,它要开始发了。
(3)浏览器发送HTTP请求
(4)服务器处理请求并返回HTTP报文
(5)浏览器渲染页面:解析HTML,构建DOM树,解析CSS,构建CSS规则树,合并DOM树和CSS树成render树,计算页面元素布局、宽高、尺寸等信息布局布局渲染树,根据元素外观表现样式绘制渲染树
(6)TCP关闭连接,四次挥手...
3、浏览器重排、重绘分别指什么;
重排指页面元素尺寸、位置信息发生变化,需要重新构建DOM树,CSS树,合并他俩成render树,布局,绘制
重绘指仅仅元素外观样式发生变化,只要重新绘制即可
重排必然引发重绘
4、
console.log(100+'100');//100100 console.log(100+'num');//100num console.log(100+true);//101 console.log(100+false);//100 console.log(100+undefined);//NaN console.log(100+null);//100
var bb=1; function aa(bb){ bb=2; alert(bb); } aa(bb);//2 alert(bb);//1,函数执行完,bb是参数,函数内bb被销毁
浏览器内核