前端常考面试题总结

142 阅读2分钟

JavaScript 篇

    1. JavaScript的数据类型 ★★★
    1. 判断变量的类型 ★★★
    1. 数据类型转换 ★★
    1. 原型和原型链 ★★★
    1. 闭包及优缺点 ★★★
    1. call/apply/bind ★★★
    1. DOM 事件流和事件委托 ★★★
    1. Cookie/storage ★★★
    1. 数组和对象的常见方法 ★★
    1. new内部做了什么 ★
    1. 防抖和节流 ★
    1. requestAnimationFrame ★★
    1. this 指向 ★★
    1. 作用域链 ★
    1. let/const/var的区别 ★★★
    1. ES6 异步编程:Promist 和 async awiat ★★★
    1. 箭头函数 ★★
    1. JavaScript 的运行机制 ★★★
    1. 实现继承的几种方式 ★★
    1. 垃圾回收 ★

HTML/CSS 篇

    1. 行内元素/块级元素,非替换元素/替换元素 ★★★
    1. img 标签的 title 和 alt 属性 ★★
    1. meta 标签 ★★
    1. DOCTYPE 标签 ★★★
    1. script 标签的 defer 和 async ★
    1. W3C 盒模型和怪异盒模型 ★★★
    1. 水平垂直居中的方法 ★★★
    1. BFC ★★★
    1. 清除浮动的方法 ★★★
    1. position 属性 ★★★
    1. CSS 隐藏元素的方式 ★★★
    1. Flex布局 ★★★
    1. 双栏布局 三栏布局 ★★★
    1. 重排和重绘 ★★★
    1. CSS 选择器 ★★★
    1. CSS 动画 ★★
    1. CSS 实现三角形 ★★
    1. CSS Sprites ★★
    1. px rem em ★
    1. 伪类/伪元素 ★

Vue 篇

    1. 单页应用 (SPA) ★★★
    1. MVVM ★★★
    1. Vue 的响应式原理 (双向数据绑定) ★★★
    1. data 为什么是函数 ★★
    1. v-model 的原理 ★
    1. v-if 和 v-show的区别 ★★★
    1. computed、watch 和 method ★★
    1. Vue 的生命周期 ★★★
    1. 父子组件声明周期顺序 ★★
    1. Vue 组件间通信的方式 ★★★
    1. Vue 的单向数据流 ★
    1. keep-alive 组件 ★
    1. slot 插槽 ★
    1. Vue 检测数组和对象的变化 ★★
    1. 虚拟 DOM ★★★
    1. Vue 中的key 的作用 ★★
    1. nextTick 的原理 ★★
    1. Vuex ★★★
    1. vue-router 的两种模式 ★★
    1. vue-router 有哪几种导航钩子 ★

算法篇

    1. 防抖和节流 ★
    1. 深拷贝 ★★★
    1. 数组扁平化 ★★★
    1. 单例模式 ★★
    1. 数组去重 ★★★
    1. 手写 promise.all 和 promise.race ★★
    1. 模拟实现 new ★
    1. 实现 call/apply/bind ★
    1. 模拟Object.create( )的实现 ★
    1. 千分位分隔符 ★
    1. 实现三角形 ★★
    1. 实现三栏布局/双栏布局 ★★★