面试准备

228 阅读4分钟

数据结构、计算机网络 + 前端的知识

40% 60%

面经 10%

https://www.nowcoder.com/search/all?query=%E5%89%8D%E7%AB%AF%20%E9%9D%A2%E7%BB%8F&type=all&searchType=%E9%A1%B6%E9%83%A8%E5%AF%BC%E8%88%AA%E6%A0%8F 

数据结构 20-30%

  1. 笔试 1)单独的笔试--2)**面试过程中 **
  2. leetcode
    • hot 100 leetcode.cn/problemset/…
    • 简单、中等 --80-100题 3/天 -- 10-20%
    • 数组、字符串、二叉树、队列、栈、链表
    • 类型:递归 dfs bfs 动态规划 背包、排序
    • javascript leetcode.cn/problemset/…
    • 类型:扁平化数组、数组去重、柯里化、节流、防抖、闭包、promise

计算机网络 20-30%

  1. 关键词: http、tcp/udp、请求方式get/post、进程/线程、状态码、缓存、(DNS)
  2. 知识地图: juejin.cn/post/690832…
  3. 常见问题:
    • http/https区别、http1.1、 http2.0特点和优点、(websocket特点)
    • tcp 拥塞控制、流量控制;tcp/udp 区别 udp特点
    • get/post 区别
    • 进程/线程区别
    • 常见状态码[4开头 3开头 2开头 5开头分别代表什么] 500 404 304 302 分别代表什么
    • 缓存 - 强缓存/协商缓存; localstorage\sessionStorage\cookie 区别\

前端的知识 50-60%

html+css+js(重要) + vue\react(vue比较简单) + webpack

html 10%

https://juejin.cn/post/6905294475539513352 (仅供参考)
  1. 关键词: html5、语义化标签、DOM查询操作、常见行内元素/块级元素、BFC
  2. 常见问题:
    • 什么是BFC,如何构建BFC?
    • html5新增哪些特性?
    • 常见语义化标签有哪些?
    • 常见块级元素、行内元素
    • DOM查询操作--js 对于DOM的处理 例如 querySelectorAll

css 30%

juejin.cn/post/690553…

  1. 关键词:选择器、定位(position)、浮动(float)、flex、bfc、盒模型
  2. 常见问题:
    • 常用选择器和优先级?
    • 伪类、伪元素是什么?
    • 定位有哪几种?分别有哪些用法
    • 浮动是什么?
    • 如何清除浮动?--引出BFC(块级格式化上下文)是什么?
    • 盒模型?什么是border-box
    • 如何隐藏元素?有哪几种方式
    • 实现一个三角形
    • 实现两栏布局、三栏布局-中间自适应
    • 实现 垂直水平居中的几种方式?
    • 画一个0.5px的直线如何实现?
    • 单行、多行文本溢出 折叠如何实现?
    • flex布局的理解,与运用
    • (进阶--什么是预处理器?Less\sass是什么?)
    • css3 有哪些新特性?

js 40%

https://juejin.cn/post/6940945178899251230 --重点看-总结的很全面--面试题
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript  --MDN --基础知识
https://wangdoc.com/javascript/basic/history --阮一峰 --基础知识**  
  1. 关键词:数据类型、es6、变量提升、作用域、this指向、原型链、柯里化、执行上下文、异步【promise\async\await】
  2. 常见问题:
    • 常见数据类型有哪些?es6新增了哪些?
    • 如何判断一个变量的类型? typeof 、instanceof 怎么使用?
    • 什么是变量提升?如何避免变量提升?
    • 什么是作用域? 如何构建块级作用域
    • this指向问题--call\bind\apply有什么作用?怎么使用?如何实现call\bind\apply\new等等
    • 什么是原型链?--结合上面的this指向问题提问
    • 柯里化-如何实现一个柯里化
    • 常见的遍历方式有哪些? for循环\ for of \ for in\ map\forEach\reduce用法
    • 什么是内存泄漏?垃圾回收机制?
    • es6有哪些新特性?let\const\set\map\柯里化\迭代器\async \await \模板字符串\ 解构
    • 字符串有哪些操作方法?split slice
    • 数组有哪些操作方法?push pop shift unshift sort map forEach reduce slice splice join
    • 类数组是什么?arguments是什么?
    • 正则?什么是正则?正则表达式
    • 异步请求promise? 实现Promise.all/实现Promise.race? 什么是 async/await?
    • setTimeout/setTimeInterval?
    • 事件循环机制?** 事件循环队列**
    • (ajax axios fetch dom操作 )

vue(框架-20%)

v2.cn.vuejs.org/v2/guide/ 官方文档-快速入门 学习vue 2.0 、、 juejin.cn/post/691937… -知识地图

  1. 常见问题
  • vue 原理?
  • MVVM是什么?
  • 双向数据绑定原理?--v-model原理?
  • v-if v-show 区别?
  • vue生命周期有哪些?
  • computed watch methods 分别是什么? 有什么区别?
  • 什么是虚拟DOM? 为什么Index不能作为循环的key
  • 组件通信方式?父组件->子组件?子组件->父组件?
  • vue cli 脚手架
  • (进阶vuex如何使用? vuex状态管理)
  • (进阶 vue 3.0有哪些新增属性?与2.0区别?)

webpack 工程化(10%-20%)

https://webpack.wuhaolin.cn/1%E5%85%A5%E9%97%A8/#google_vignette
B站
https://www.webpackjs.com/

-- 需要动手搭建一个小项目使用webpack

  1. 常见问题
  • 常见的Loader有哪些?有什么作用?
    
  • 常见的Plugin有哪些?有什么作用?
    
  • babel是什么?有什么作用?
    
  • (进阶--webpack性能优化常见的操作有哪些?
    

基础能力

git命令

  1. 常见的git操作,如何拉代码、推代码、分支冲突、拉新的分支
  2. ** 在github构建一个代码仓库,本地开发代码都推上去**
  3. 常见命令

juejin.cn/post/697418…

项目---github上找vue框架的商城、后台类型的项目,