深信服10.27前端二面
自我介绍
讲一下做过什么项目
vue父子组件的通信方式
vuex的原理(不太了解原理)
那讲讲为什么要使用vuex
webpack的优化了解吗(不了解)
如果首页白屏(已经上线)很久,应该怎么排错(网络、服务端配置、首屏资源是否太多)
如何实现一个类似百度搜索框的搜索框(根据输入提供匹配项、回车或按搜索按钮返回匹配条目)
异步编程解决方案
说说了解的设计模式(说了发布订阅、懒汉、观察者和它们的实际应用场景)
手撕算法题:
- 事件总线(on off emit once clear)
- 给你一个对象数组,每个对象是一棵树,给你一个filterName,过滤出树中有name等于filterName的对象,任何时候都不能改变原有对象结构
function filter(tree, filterName) { let treeLen = tree.length; let res = []; for(let i = 0; i < treeLen; i ++) { if(tree[i].name === filterName) { res.push(tree[i]); } else if(tree[i].children) { let childRes = filter(tree[i].children, filterName); if(childRes.length !== 0) { // 不能直接 tree[i].children = childRes; 因为 tree 中的对象不能改变 res.push(Object.assign({}, tree[i], {children: childRes})); } } } return res; }
这题做的不是很好,上面的代码是面试官提醒下写完的
反问(问了业务,说没办法告知具体的,但大多是ToB的)
让我过吧!!!!
#深信服##秋招##前端##面试题目#