如何搞定所有面试题
思考的解答
对上一节的思考,做一下解答。
- 拿到一个面试题,你第一时间看到的是什么?—— 应该是知识点,这道题的考点,面试官出这道题,到底想考你什么。
- 又如何看待网上搜出来的永远也看不完的题海?—— 以不变应万变,看那些题目考察的知识点是什么?题可以千变万化,但是知识点就这么多
- 如何对待接下来的面试题?—— 先通过已有的题目,捋出前端考察的所有知识点(即本教程),然后再拿着这些知识点,去对应接下来的面试题。
题目的知识点
然后,我们把上一节每个题目考察的知识点总结一下,要核心知识点,牵强附会的先不管
JS中使用typeof能得到的哪些类型
JS 基础,变量的类型。 同类型的题目还有:如何判断一个变量是数组?值类型和引用类型的区别?如何实现深度拷贝?
何时使用===何时使用==
变量的运算,强制类型转换。 同类型的题目还有:快速将字符串转换为数字+str,以及快速将数字转换为字符串num + ''
window.onload 和 DOMContentLoaded 的区别
页面渲染过程。 同类型的题目还有:为何把<script>放在<body>底部,把 CSS 引用放在<head>中
用 JS 创建 10 个<a>标签,点击的时候弹出来对应的序号
闭包和作用域。 同类型的题目还有:jquery 或者 zepto 等为何代码都包括在一个(function(window){...})(window)中
手写节流函数
网页性能和体验优化 同类型的题目还有:防抖函数,常见的性能优化方案
Promise 解决了什么问题
异步 同类型的问题还有:异步和同步的区别,异步有哪些应用场景,定时器的使用等
接下来
上面介绍了好多个知识点,那么前端一共有多少个知识点?什么样的知识体系才能覆盖所有的面试题?下一节解答。

讨论区
欢迎留下想法与补充