当前位置: 首页 > 面试经验 >

cvte前端一面(提前批,已挂)

优质
小牛编辑
107浏览
2023-03-28

cvte前端一面(提前批,已挂)

1. 介绍下项目难点
2. 手动实现过vue的指令吗?指令的作用?
3. v-if和v-show的区别
4. 计算属性computed怎么知道依赖其他的哪些属性?例如计算属性有一个fullname,依赖data中的firstname和lastname,计算属性如何知道它依赖哪些属性?
5. vuex有什么作用?跟全局对象有什么区别?
6. 组件怎么监听到vuex中数据的更新?
7. css文件为什么要放在上面?js文件为什么要放在下面?js为什么会阻塞DOM渲染?js为什么是单线程的?
8. 长列表渲染优化怎么做?
9. 说下闭包,有什么用处?
10. 什么是重排和重绘?
11. 浏览器证书的作用?
12. 用过哪些设计模式?
13. 如何实现发布订阅者模式?
14. 算法题:
 * 将一个绝对路径简化
 * 在一个类 Unix 系统中, 一个点(.)表示当前路径, 两个点(..)表示上一层目录
 *
 * 比如:
 * 输入 /root/./user/../../work/, 输出 /work
 * 输入 /root/../../user/../work//.//, 输出 /work
 * 输入 /root//user////work/koa//././/.., 输出 /root/user/work
     
     function simplifyPath(path) {
      const res = [];
      let a=path.split('/');
      for(let i=0;i<a.length;i++) {
        if(a[i]===''||a[i]==='.') {
          continue;
        } else if(a[i]==='..') {
          res.pop();
        } else {
          res.push(a[i]);
        }
      }
      if(res.length==0) return '/';
      let str=res.join('/');
      str='/'+str;
      return str;
    }
    
    console.log(simplifyPath("/root/./user/../../work/"));
    console.log(simplifyPath("/root/../../user/../work//.//"));
    console.log(simplifyPath("/root//user////work/koa//././/.."));
15. 了解过react和node.js吗?
16. 了解web安全吗?csrf是什么?攻击者如何拿到用户cookie信息?
17. 了解过跨平台开发?
18. css如何实现三列布局?
19. BFC是什么?

#前端##cvte#
 类似资料: