1.实现元素水平垂直居中的方法
块级元素 && 行内元素
宽高固定 && 宽高不固定
2.多端的浏览器适配和兼容
通过媒体查询可以为不同大小和尺寸的媒体定义不同的css,适应相应的设备的显示。
media媒体查询
3.移动端适配rem实现
3.css的盒子模型
3.BFC规范
3.清除浮动 && margin塌陷
3.const let var 区别
4.call && apply && bind
5.js中this指向 && 箭头函数的this
6.js的继承 && class的继承
7.js继承的几种写法
8.js的原型 原型链
9.node的事件机制
10.js的事件循环机制
11.promise && async && await
12.回流 && 重绘
13.cookie && locStroage && sessionStroage
14.项目中的登陆处理
15.for of 和for in 区别
16.js中this指向 && 箭头函数的this
17.js对象的深拷贝 && 浅拷贝
18.js基本数据类型 && es6 新增数据类型
19.js数组去重
20.js闭包
21.js防抖 && 节流 && 应用场景 && 实现方式
22.跨域问题
23.前端防御
24.浏览器缓存
25.前端路由实现原理
26.前端spa单页
27.浏览器渲染解析过程
28.前端性能优化的方法
1: 启动cdn实现静态资源加载优化
2: 浏览器回流 || 重绘
3: 懒加载
4: 首屏优化 —单页面应用提高首屏加载速度
29.es6数组新增方法
1.js手写-数组去重
2.js-对象深拷贝 && 浅拷贝
3.js手写-call && apply && bind方法
4.js手写-快速排序 && 冒泡排序
5.js手写-防抖 && 节流
6.js手写-实现new构造函数
7.js手写-解析url的params
8.js手写-实现promise
9.js手写-实现instanceOf
1.vue-对MVVM的理解
2.vue-对vue生命周期的理解
3.vue- v-if || v-for 优先级
4.vue- vue如何实现响应式 && vue2 和vue3 区别
5.vue- 为什么返回的是函数不是对象
Vue data为什么是函数,不是对象
主要是为了组件之间不共享数据,解除数据之间的关联
如果是对象 => 对象是引用类型
obj1 obj2 => 当一个对象被多次引用的时候 => 指向的就是一个内存地址
但如果是function 的时候 return 一个data出来 => 相当于重新定义新变量了,相互独立
当data定义为对象后,这就表示所有的组件实例共用了一份data数据,因此,
无论在哪个组件实例中修改了data,都会影响到所有的组件实例。
组件中的data写成一个函数,数据以函数返回值形式定义,
这样每复用一次组件,就会返回一份新的data,
类似于给每个组件实例创建一个私有的数据空间,
让各个组件实例维护各自的数据。而单纯的写成对象形式,
就使得所有组件实例共用了一份data,就会造成一个变了全都会变的结果。
6.vue- vue绑定时对数组的处理
7.vue- vue的虚拟dom理解
8.vue- vue组件传值方式
9.vue- v-if && v-show区别
10.vue- for循环设置key
唯一标识=> 高效更新虚拟DOM
11.vue- vue-router实现原理
hash模式
histroy模式
12.vue- vue路由的钩子函数
13.vue- vue渲染首屏空白
14.vue- nextTick函数的原理和理解
15.vue- vue的set方法的原理
16.vue- vue的Object.defineProperty && proxy区别
17.vue- vue页面首次加载缓慢的解决方案
1.webpack- 常用的loaders && plugins有哪些
2.webpack-手写实现loaders原理
3.webpack-HRM热替换的原理
4.webpack-打包出来的文件过大如何处理
5.webpack-打包过程