一、简答题
- JavaScript 创建对象的几种方式?
- JavaScript 继承的几种实现方式?
- 说一下对this的理解。
- 什么是Proxy?
- 事件委托是什么?
- 说一下你所理解的闭包
- 说一下你所理解的ajax,如何创建一个ajax?
- 说一下你所理解的同源政策?
- 你是如何解决的跨域问题的?
- 你所理解的JavaScript的事件循环机制是什么?
- 说一下对Object.defineProperty()的理解。
- 说一下图片的懒加载和预加载的理解。
- 请求服务器数据,get和post请求的区别是什么?
- Reflect对象创建的目的是什么?
- require 模块引入的查找方式?
- 观察者模式和发布订阅模式有什么不同?
- 检查数据类型的方法会几种,分别是什么?
- 谈谈对JSON的了解。
- 进行哪些操作会造成内存泄漏?
- 谈谈你所理解的函数式编程。
二、运行题
- 实现js的节流和防抖函数,两者的区别是什么?
- 实现js中的深拷贝
- 手写call函数
- 手写apply函数
- 手写bind函数
- 实现柯里化函数
- 手写一个观察者模式
- 手动实现EventEmitter(发布订阅模式)
- 手动实现jsonp
- 手动实现new关键字
- 手动实现 Object.assign
- 实现 解析url参数为对象 的函数
- js格式化数字(每三位加逗号)
- 手写instanceof关键字
- 手写数组去重的方法?
三、分析题
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.