一面 9.14 1h+自我介绍代码题答错了以为a是3了呜呜var result = [];var a = 3;var total = 0;function foo(a){    for(var i=0;i<3;i++){        result[i] = function(){            total += i*a;            console.log(a,i,total)        }    }}foo(1);result[0]() //3result[1]() // 6result[2]() // 9对作用域的理解(上一题做错了所以函数作用域这里理解的不太对对闭包的理解,使用场景手写Promise.all手撕题:括号匹配如果括号匹配错误输出error,匹配成功输出所有在()中的内容。输入:((2+3)+(3*4))+2工作中遇到的问题反问:自研canvas框架,负责飞书表格二面 9.21 1h+多半凉了感觉没啥问的就做题了自我介绍项目中使用了Vite,Vite做了哪些事(初始化,热更新,打包,代理服务器)Vite打包主要做了哪些事?❌打包后为什么要分成多个chunk在浏览器中如何读取缓存,怎么确定是哪个缓存❌强缓存和协商缓存说了一些,还是没有理解上一个问题使用vue-router做了什么,使用的单页面还是多页面vue-router实现单页面的原理刷新页面的时候如何保证不会404,history的情况下后端应该做什么配置(返回对应的html文件)vue从数据变更到界面变化会经历哪些过程(双向绑定+diff)node.js是怎么把js跑在服务端的,由什么组成的?❌开始做题a. 给定一个非递减排列的数组nums,和一个目标数值target,判断target是否是nums的主元素,是则返回true,否则返回false。主元素的定义是:在数组中出现的次数严格大于数组元素个数的二分之一。       输入:nums = [1,2,3,4,4,4,4,4,4,5,6] ,target = 4       输出:true       说思路:刚开始没看到非递减,说了用哈希的思路面试官问了时间复杂度和空间复杂度看到了非递减,计算target的开始位置和结束位置来计算进一步优化,使用二分查找开始和结束位置       b. 括号匹配(真的好爱出括号匹配啊做了好多种了)        输入一个由小写字母a-z以及左括号(和有括号)组成的字符串s,尽可能少的删除括号,使得字符串中的括号匹配,返回删除括号后的字符串。(输出不唯一)        输入:s = “a(b(c(de)fgh)(((bb))”        输出:“a(b(cde)fgh)((bb))”        思路:栈负责括号匹配,记录括号下标,右括号匹配过程中做删除,遍历字符串后如果栈不为空则删除多余的左括号。(删除方式被面试官提醒了一下)没反问啥三面 10.9 30min+面试官人好好,很和蔼自我介绍实习响应式原理,diff算法手写题:版本号比较论文相关,什么时候能实习还要哪些正在流程中反问还有一轮技术面+hr面又没了解业务啊啊啊呜呜呜学习webpack—尝试做个插件四面 10.17 50min+自我介绍项目相关:验证码,如何防机器人(答得不好),划词细节高亮显示使用的css样式微信扫码登录流程token如何传递,前端拿到后如何处理博客项目相关,就随便聊聊,面试官估计找不到啥想问的了做题    二叉树求最近公共祖先节点 + 手写并发进程和线程,区别进程通信的方式两个并发进程同时操作i++会有什么结果,为什么会被吞操作,怎么保证执行结果mutex本质上是什么东西,是一块内存还是寄存器❌?(只说了是原语,不能被打断)如果访问资源的时候mutex=0,这个线程会被怎么操作阻塞和唤起是具体怎么实现的 ❌浏览器中了解的进程和线程(一时脑抽只说出来线程)
点赞 5
评论 6
全部评论

相关推荐

09-29 15:34
已编辑
北京航空航天大学 C++
做个有文化的流氓:结果是好的,过程不重要,而且你的offer太多了
软开人,秋招你打算投哪些...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务