面试官:说一下vue3响应式
第一层回答
按照源码实现来回答
proxy、reflect
创建proxy代理对象,监听用户的get、set操作,再通过reflect反射给代理对象
当get时会track(收集依赖),当set时会trigger(触发依赖)
12345678910111213141516export function reactive(raw) { return new Proxy(raw, { get(target, key) { const res = Reflect.get(get, key) // 执行收集依赖操作 track(target, key); return res }, set(target, key, value) { const res = Reflect.set(target, key, value) // 执行触发依赖操作 ...
坐标深圳,面试了一个三年经验的前端
说一下背景,公司为创业型公司,项目组才创建,目前只有我一个前端,我个人的招聘需求是不要求技术非常厉害,只要喜欢钻研学、喜欢思考、平时能多沟通,最重要的是写代码的时候能吹牛逼就行。如果能比我强,带带我,那肯定更好。
想看面经的我还有一篇文章深圳前端一年半,投了两个月简历,第一场面试
这次的简历是我老大筛出来的,原本是他去面的,但是他开会去了,所以我就临时去面了,此次面试者是一位三年工作经验的前端,主要技术栈是vue3、vite
平常有没有自己造轮子或者看一些开源的项目面试者:有看github,看vue相关的开源
我的想法:面试者的简历没有写关于这些的内容,我问这个问题的原因,主要想看面试者是否有关注一些开源项目,会不会去造轮子,我平常也会看github或者一些文章之类的,希望能从这个问题延伸开,开始面试。
接着问,能说一下具体的是哪方面的开源吗,组件库还是一个工具库还是一个框架,或者文章、博客都行,简单介绍下
面试者:不记得了。。。
我的想法:有些开发者没有逛开源的习惯,这个不一定能考察到面试者是否喜欢钻研思考,直接开始下一个问题吧
从0到1搭建一个项目你会考虑哪些问题面试者:从 ...
JavaScript手写代码
1. 函数的call() / apply() / bind()12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667/* 自定义函数对象的call方法*/function call (fn, obj, ...args) { // 如果传入的是null/undefined, this指定为window if (obj===null || obj===undefined) { // obj = window return fn(...args) } // 给obj添加一个方法: 属性名任意, 属性值必须当前调用call的函数对象 obj.tempFn = fn // 通过obj调用这个方法 const result = obj.tempFn(...args) // 删除新添加的方法 delete obj.tempFn ...
输入一个URL发生了什么
用户输入当用户开始在导航栏上面输入内容的时候。UI线程要进行一系列的解析来判定是将用户输入发送给搜索引擎还是直接请求你输入的站点资源。
如果是搜索内容,地址栏会使用浏览器默认的搜索引擎,来合成新的带搜索关键字的 URL。
如果判断输入内容符合 URL 规则,比如输入的是 time.geekbang.org,那么地址栏会根据规则,把这段内容加上协议,合成为完整的 URL。
当用户按下回车键的时候,UI线程会通知网络进程初始化一个网络请求来获取站点的内容。
这时候tab上的icon会展示一个提示资源正在加载中的旋转圈圈,而且网络进程会进行一系列诸如DNS寻址以及为请求建立TLS连接的操作。
tips: 这时如果网络进程收到服务器的HTTP 301重定向响应,它就会告知UI线程进行重定向然后它会再次发起一个新的网络请求。
当用户输入关键字并键入回车之后,这意味着当前页面即将要被替换成新的页面,不过在这个流程继续之前,浏览器还给了当前页面一次执行 beforeunload 事件的机会,beforeunload 事件允许页面在退出之前执行一些数据清理操作,还可以询问用户是否要离开当前页面 ...
深圳前端一年半,投了两个月简历,第一场面试
背景
base深圳,一年半经验,找的初级前端岗位,1-3年,投简历两个月只有两个面试,这是第一个面试
一面你对html元素是怎么分类的?一开始我愣了一下?搞这么简单的问题???后面又问面试官你是指的id选择器这些吗,,还是display:block,inline-block这些?不管了,反正我全都讲了一遍,说了下这些八股文基础,感觉有点简单,说得有点少。另外又展开说了HTML DOM节点那些内容
image是行内元素为什么有宽高?
这个问题我倒是没有了解过啊,想了下说,会不会和input或者什么video之类的差不多,对于这类元素,浏览器有其他的解析方式(万能答法:问什么都能答浏览器解析)
面试官让我了解下可替换元素,,img属于可替换元素
你用过哪些http状态码?因为没有刻意的去背这些玩意,所以只是大概做了下分类。就回答了常见的状态码,比如101我就在websocket上见过,200或者201就是请求成功,3开头大概就是重定向的,又展开说了下永久重定向和临时重定向的区别,4开头的大概就是前端问题,比如401就是没有权限没有token,404请求url错误,5开头的大概就是后端问题 ...
文章分类模板
初始化项目分类及标签tags:
前端面试
前端架构管理
前端监控
前端性能优化
前端源码解析
前端项目管理
categories:
前端
后端
计算机基础