百图生科 校招 一面(9.5)
时间一个小时多一点,秋招第一场面试,发现好多自己的不足!
1.自我介绍 √
(计算机网络)
2.DNS了解吗?简单说一下DNS的查询过程 √
3.baidu.com的一级域名是什么?√
4.TCP和UDP的区别是什么?√
5.为什么TCP可靠性、安全性更高? √
(Javascript)
6.Javascript的基本数据类型有哪些? √
7.如何获取数据的数据类型是什么? √
8.typeof function()为什么返回function而不是object? × (因为,typeof去检测引用类型的时候,会去看这个引用类型内部有没有[[call]]方法,如果有,则返回function;如果没有,则返回object。)
(ES6)
9.简单介绍一下ES6增加的一些比较重要的点 √ (块级作用域let const、扩展运算符、箭头函数、Symbol、Set Map WeakSet WeakMap、Promise async await、Proxy Reflect)
10.map和weakmap的区别 ×(本质都是键值对的集合:1.weakmap是若应用,因而键名只能是对象;而map键名可以是任意类型;2.weakmap键名指向的对象不计入垃圾回收机制,一旦不需要,键名对象和键值会自动消失,不用手动删除。3.map是有序列表,weakmap是无序列表)
11.async...await使用的时候怎么捕获异常呢? × (通过try ... catch捕获异常)
12.promise、async...await和setTimeout的区别? √
13.Promise.all和Promise.allSettled的区别是什么? √
14.Promise.race的作用是什么? √
(css方面)
15.简单介绍一下css盒模型? √
16.将页面中某元素隐藏的方式? √
17.display: none和visibility: hidden的区别是什么? √
18.pc端字号最小为12px,如果我想展示为10px或者8px应该怎么做? ×(transform: scale(0.83); /* 缩放为原来的 0.83 倍,相当于 10px */)
19.实现css动画有哪些方式呢? ×(没了解过)
(http协议)
20.常见的状态码和响应头请求头有哪些? √ (100、101、200、201、202、204、206....... Cache-Control、Accept、Access-control-allow-origin...、If-Match、If-None-Match、If-Range、Range; Accept-Range、Age、ETag、Expires、Last-Modified、Cookie)
21.发起一个http请求,有没有缓存,缓存的状态码返回什么呢? ×(一定是304吗)
22.在nginx里面有配过缓存相关的东西吗? ×
23.简单聊一下理解的微前端? √
24.对于qiankun和无界两种方案的区别? ×
(vue)
25.vue2和vue3的区别是什么? √(1.defineProperty->proxy; 2.选项式api->合成式api; 3.生命周期函数变化;4.根节点一个->可多个Fragment;5.ts更友好的支持。)
26.vue2用到data函数,为什么是一个函数呢? √ (vue多个实例,对象形式可能导致共用一个data对象影响所有组件实例;函数形式规避多实例之间状态污染问题。)
27.假如vue3,里面通过Proxy代理的方式,假如有一个ref响应式变量很多地方依赖了,vue3里面怎么存储这种依赖关系的呢? √×(依赖的理解 + 依赖树)(Vue在编译阶段会把这些依赖关系抽象为一个依赖图谱,依赖图谱记录了订阅者(即依赖)和目标(被依赖的ref变量)之间的关系;当ref变量变化时,Vue会通知依赖图谱中的订阅者,以触发响应的更新;它能够自动追踪和更新与该ref变量相关的所有依赖关系。)
28.手写flat数组扁平化 √
(反问)
校招实习安排
业务方面,AI大模型