大佬们,一人出一道前端面试题,年后准备跳槽

1 天前
 Croow

如题,op 目前 3 年经验,准备年后投一波,大佬们,html ,css,es5,es6,ts,vue,react,vite,webpack,常见算法手写题,项目场景题等等无任何限制, 任意发挥,可以自创,可以搜索,金三银四,可以准备一波。

2233 次点击
所在节点    职场话题
49 条回复
murmur
1 天前
这是我面试别人的题,有人说,因为 vue3 可以在 setup 模式下直接用 ref 定义响应式变量,那么我只要把这个变量用全局变量共享出去,就可以实现以前状态管理框架才能实现的功能。

1 、这个说法可不可行

2 、这个说法有没有什么不妥或者漏洞

3 、如果不妥,请指出不妥之处
c3de3f21
1 天前
出一个 JsDistServer 搭建+版本控制+远程加载+局部渲染+事件联动的方案?
c3de3f21
1 天前
根据上面的方案 设计一条链路,我写组件,发布,在线拖拽配置数据源,发布页面,自动部署?
lyyhello
1 天前
vue 生命周期
murmur
1 天前
@c3de3f21 你这个至少得月薪 50k 的才能回答,我们目前在用的大型 OA 就有这个功能,有一个 react 二开平台,全拖拉拽操作,各种配置,各种操作图形化编程,什么字段校验多复杂的流程直接拖,还有移动端自动适配,换皮什么都是小 case

但是人家光 redis 服务器就一堆节点,这么复杂的配置要做到编译的性能,你缓存得存多大啊
musi
1 天前
@murmur #5 op 说项目场景题等等无任何限制,如果对方公司刚好就是你们在用的大型 OA 公司呢?我觉得问这个问题也正常,而且可以通过候选人答题的思路以及考虑的范围去了解候选人的知识深度和广度,无非就是最终方案的可行性和完整性跟薪资匹不匹配的问题
Croow
1 天前
@murmur 目前我在做的项目,早期部分模块就是这样做的,这样写有几个问题:1,跟使用 pinia 的状态管理工具相比,组件的状态是不能用游览器调试插件直观地看出来,2 ,整个组件数据流向不清晰,代码可读性非常差,项目会变得非常难维护,3 ,这些变量是存在全局的,如果有多个组件在频繁访问,修改这些全局变量会增高耦合度。
courtier
1 天前
好哥哥们来点 5-6 年的,好久没面过了不知道外面怎样,年后估计要被整走了
murmur
1 天前
@Croow

我其实听到的点,是 ssr 下可能会有问题,具体没看,因为 js 在浏览器上都是单线程的,但是上了 ssr 就未必了

对于我来说,完全可行反倒是我喜欢的答案,企业开发没多少全局变量,全局状态太多了你耦合性是不是太高了,全局数据就一个用户信息一个权限,几个变量就存完了。以前全 event 开发都能调试,现在有 watch 调试不了,你得多不自信啊
murmur
1 天前
还有一个考 css 熟练度,纯八股文的偏题,就是问,如何实现文字超过 2 行才显示省略号
shadowyue
1 天前
问这么难的干嘛,我都是问,怎么比较两个日期字符串或者日期对象谁先谁后这种
Croow
1 天前
@murmur 大佬,学习了
davin
1 天前
Q: 浏览器渲染页面的过程是怎样的
A: DOM 树->CSSOM 树->渲染树->布局->绘制->合成

Q: 有哪些方式可以触发浏览器启用 GPU 渲染,浏览器如何知道什么时候是否启用 GPU 渲染?
A: 普通文档流与 Compositing Layer 。3D transforms ,CSS filters ,will-change 属性等可以触发。渲染原理:图层分层,纹理映射。

Q: 如何发现前端性能瓶颈,优化方式有哪些(开放性提问)?
A: 合理使用 GPU 加速,使用 will-change 提前告知浏览器。DevTools 分析,网络优化,代码优化,缓存策略,性能监控工具。Lighthouse ,Sentry ,Microsoft Clarity ,Google Analytics 等。

可能容易混淆的知识点:
强缓存🆚协商缓存
微任务🆚宏任务
事件冒泡🆚事件捕获
前端渲染🆚服务端渲染
原型继承🆚类继承
深拷贝🆚浅拷贝
同步🆚异步
闭包🆚立即执行函数
节流🆚防抖
let🆚const🆚var
Promise🆚async/await
箭头函数🆚普通函数
模块化规范:CommonJS🆚ES Module
优雅降级🆚渐进增强
SchwarzeR
1 天前
感觉我能想的都是问问烂的八股文
不过纯搓业务的话感觉不如结对写几行代码有代表性

一定要问的话比如
顺着跨域问 preflight 条件,怎么处理,alloworigin 能不能一律返回*,请求过来现装一个域名返回去有什么风险
vue3 怎么快速的把非受控子组件的状态重置,会不会内存泄漏,要是里面还有保持的长连接怎么搞

状态共享不用 pinia 行不行,不用模板撮 render 函数来看看,设计个简易埋点,sendbeacon 好用不,试过调 wasm 没,掺着算法问一段文字给你几个词第 n 个 A 词,B 词 hover 加粗,剩下的 hover 时造一个用 css 搞一个深色遮罩并关掉鼠标事件

感觉一般糊业务也就差不多到这了
c3de3f21
1 天前
@murmur 测一下有没有思路,比如问题拆解能力,每部分大概要怎样规划,怎样做,包括你说的皮肤,适配,i18n ,联动崩溃如何检测,巴啦巴啦巴啦。迎难嘛。
murmur
1 天前
我这还一个基础题,请将下面 fun1 的位置带入 fun1-fun5 ,说一说执行结果是什么

```
async function fun1(){
return false;
}

async function fun2(){
return Promise.resolve(false);
}

async function fun3(){
return Promise.reject(true);
}

async function fun4(){
return new Error('出错力!');
}

async function fun5(){
throw new Error('又出错力!');
}

async function test(){
try {
await fun1();
}catch(e){
console.log('fun: 捕捉到错误了',);
}
}


test();
```
( 2 )如果执行的不是 await fun5(),而是 fun5()结果又是什么
EmbraceQWQ
1 天前
有没有后端的,蹲一条可以吗?
murmur
1 天前
@davin 优雅降级🆚渐进增强 这个是 IE 年代才有的面试题,现在就是上完整版,用户如果浏览器不支持就让他去下个 360
murmur
1 天前
@EmbraceQWQ javaguide.cn 自己去背八股文吧,后端能面的太多了,光一个 spring 系列就能出多少题
EmbraceQWQ
1 天前
@murmur 会点 感谢分享 经典的 java guide ,虽然我现在就在写 java ,但是我比较向往每个后端语言都写写,灵活应对需求的,不知道有没有这样的大杂烩八股文宝典。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/1106855

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX