1. JavaScript的运行机制,作用域,原型链,变量特点等底层原理。
2. 设计模式,架构思维,编程思想,软件工程的常见问题。
实践
1. 二次封装axios,方便自己的项目请求与数据操作
2. 封装公用工具库,对于项目组常用的如cookie,session,字符验证等功能先进行封装。
3. 对经常不变的库进行 Dll 打包,加快打包速度
vue源码
1. 数据双向绑定,Vue3之前通过get和set完成,而Vue3后通过proxy来完成。
2. Vue中有一个虚拟dom,其实虚拟dom就是一个内部的json字符串。
React / Vue.js之类的框架为什么给组件添加key属性,其作用是什么
如何判读当前代码是运行在浏览器还是Node.js
Sourcemap是什么?有什么作用?生产环境中应该怎么用?
什么事消息队列。宏任务和微任务分别又是怎么回事
css3新特性
API作用域
slice 和 splice
时间格式化
算时间差
nodejs的stream 和 buffer
vue router的实现方式 hash值改变 如何同志数据层
vue源码
网络安全xss csrf
video和audio标签的事件
栅格布局 用js函数模拟栅格布局
less sass postcss
返回数组最大差值
继承 去重 深拷贝
aaabbbcdd如何找到第一个没有重复的
值引用和复制的区别
作用域和变量与解析
面向对象
冒泡
设计模式
w3c标准
h5游戏框架
hybrid app
http协议
手写promise.all / .race
手写async await
手写mvvm
手写DOM diff
看代码说输出 执行顺序
闭包
reduce
找到第一个没重复的字符
水平垂直居中
http缓存
缓存头部 header
catch control
网站劫持
webpack基础配置
事件捕获
vue router https://www.yuque.com/zhangwujian/vue/hhaw69
页面重绘和重排 https://www.yuque.com/zhangwujian/tsgxsg/rrcy9n
event loop 事件循环 主进程 同步 异步 宏任务 微任务
千位符 https://www.yuque.com/zhangwujian/js/frx0mw
css实现三角形
css实现三栏布局/双
隐式转换 https://www.yuque.com/zhangwujian/js/gnxmql
深拷贝 浅拷贝 https://www.yuque.com/zhangwujian/js/bbudcd
数组去重 https://www.yuque.com/zhangwujian/js/lsa09h
防抖和节流
数组扁平化 https://www.yuque.com/zhangwujian/js/gbbg7e
jsonp原理 https://www.yuque.com/zhangwujian/js/ds00kb
webpack原理 https://www.yuque.com/zhangwujian/emm/sitnds
手写new https://www.yuque.com/zhangwujian/js/pk97i4
手写Object.create() https://www.yuque.com/zhangwujian/js/kvqetd
手写 call apply bind https://www.yuque.com/zhangwujian/js/tkdm61
http三次握手四次挥手 https://www.yuque.com/zhangwujian/emm/ncugal
原型 原型链 / prototype和proto https://www.yuque.com/zhangwujian/js/bsz1z3
如何判断一个数组 https://www.yuque.com/zhangwujian/js/gn6zgz
单例模式 https://www.yuque.com/zhangwujian/js/lc1m0s