7.7 字节跳动一面
1.进程与线程
1.进程是系统进行资源分配的最小单位,线程是运算调度(程序执行)的最小单位
2.进程=线程+内存+文件/网络句柄;线程=栈+PC+TLS
2.手写防抖函数
function debounce(fn, time){ let timer; return function(){ let that = this; let args = arguments; if(timer)clearTimeout(timer); timer = setTimeout(()=>{fn.apply(that, args)}, time) } }
3.CSS实现双栏布局
<div class="parent"> <div class="stable">stable 固定宽度200px</div> <div class="change">changeable 可变宽度</div> </div> .parent{ height:500px; border:1px solid #222; display:flex;/*设为伸缩容器*/ flex-flow:row;/*伸缩项目单行排列*/ } .stable{ width:200px;/*固定宽度*/ border:1px solid #ccc; margin:20px; } .change{ flex:1;/*这里设置为占比1,填充满剩余空间*/ border:1px solid #ff4400; margin:20px; }
4.浏览器状态码
301:永久重定向
302:临时重定向
5.v-if和v-show
v-if是通过控制dom节点的存在与否来控制元素的显隐;v-show是通过设置DOM元素的display样式,block为显示,none为隐藏;
一些之前提到的问题
浏览器从输入地址到展示界面的过程
浏览器事件的处理过程