web前端面试题「二」- Javascript篇

*** 代表重要程度及频率
内容正不断迭代更新,敬请期待~

一、Javascript基础模块


1. 变量类型和计算
知识点 题目
1.值类型vs引用类型、堆栈模型、深拷贝内容***
2.typeof运算符***
3.类型转换,truly和falsely变量
①. *** 值类型和引用类型的区别\type of能判断哪些类型\如何准确判断一个变量是不是数组?
②. *** .js 赋值、浅拷贝、深拷贝的区别及实例详解
③.*** 变量计算-类型转换\何时使用 === 何时使用 ==
2. 原型和原型链
知识点 题目
1.Class和继承,结Jquery的示例来理解.***
2.instanceof ***
3.原型和原型链:图示&执行规则
①. ***class的原型本质,怎么理解?
②. 手写一个简易的的Jquery,考虑插件和扩展性
③. 如何准确判断一个变量是不是数组?
3. 作用域和闭包
知识点(本章都很重要***) 题目
1.作用域和自由变量.
2.闭包:两种常见的方式& 自由变量查找规则.
3.this.***
①. ***浅析作用域、自由变量、闭包.
②. ***this的不同应用场景,如何取值?.
③. ***.js手写bind函数.
④. ***实际开发中闭包的应用场景,举例说明(catch工具)
4. 异步和单线程
知识点(本章都很重要***) 题目
1. 单线程和异步,异步和同步的区别
2. 前端异步的应用场景:网络请求和定时任务
3. Promise解决callback hell
① 同步和异步的区别是什么?\ 前端异步的场景有哪些?
② 手写Promise加载一张图片
event-loop ③ ***请描述event-loop(时间轮询)机制
Promise进阶 ④ Promise 状态的表现与变化以及执行顺序
async/awiat ⑤ async/awiat 实例详解
微任务/宏任务 ⑥ 微任务/宏任务 实例详解
异步执行顺序 ⑦ ***promise和setTimeout async/await顺序问题

二、Javascript-Web-API模块


JS基础知识,是规定语法(ECMA 262 标准).
JS Web API,是网页操作的API(W3C标准)
前者是后者的基础,两者结合才是真正实际的应用

1. DOM-文档对象模型
知识点 题目
DOM本质.
DOM节点操作.
DOM结构操作.
DOM性能***
DOM的本质 \ DOM节点操作 \ attr和property的区别.
DOM结构操作.
***一次性插入多个DOM节点,考虑性能
2. BOM 浏览器对象模型
知识点 题目
navigator 浏览器的信息.
screen 屏幕的信息.
location 地址的信息.
history 前进后退的信息.
navigator、screen、location、history对象 \ 如何识别浏览器的类型 \ 分析拆解URL的各个部分.
3. 事件绑定
知识点 题目
事件绑定.
事件冒泡
事件代理***
描述事件冒泡的过程 \ 动态数据列表里,如何监听每条数据的点击?.
***手写通用的事件监听函数
4. ajax
知识点 题目
XMLHttprequest.
状态码.
***跨域:同源策略,跨域解决方案
手写一个简易的ajax.
***AJAX跨域问题讲解
5. 存储
知识点 题目
cookie.
localStorage
sessionStorage
localStorage、sessionStorage、Cookie的区别

三、开发环境


知识点 题目
***git
调试工具
**抓包
***webpack babel
***linux常用命令 连接测试机 KOA
*** 前端常用的开发环境核心内容整理[ git/chrome/h5抓包/webpack/linux ]

四、运行环境


知识点 题目
***网页加载过程 *** 从输入url到渲染页面的整个过程
***性能优化 ***前端性能优化的方式
***防抖节流函数封装
安全 常见的web前端攻击方式有哪些?

五、HTTP模块


知识点 题目
状态码
methods
Restful API
header
HTTP基础面试题[状态码\Methods\Restful API\header]
描述http的缓存机制***** *****Http缓存详解

六、真题模拟


知识点 题目
对象(Object.keys())、数组、 递归 手写深度比较
map、parseInt方法参数详解 [10,20,30].map(parseInt)返回结果解析
正则匹配、拆分数组、URLSearchParams 获取当前页面url参数的三种方法
concat()、递归 手写数组flatern数组拍平,考虑多层级
遍历、set 数组去重有几种方式?
数组 js数组方法整理

你可能感兴趣的:(web前端面试题「二」- Javascript篇)