js判断时间两小时之内_前端面试大全:关于JS面试时的几道思考题

之前我们通过七篇文章来介绍关于 JS 这部分的内容,那么接下来,会以几道思考题的方式来确保大家理解这部分的内容。

这种方式不仅能加深你对知识点的理解,同时也能帮助你串联起多个碎片知识点。一旦你拥有将多个碎片知识点串联起来的能力,在面试中就不会经常出现一问一答的情况。如果面试官的每个问题你都能引申出一些相关联的知识点,那么面试官一定会提高对你的评价。

1e660ec0834da900322d9e65cdddf59e.png

思考题一:JS 分为哪两大类型?都有什么各自的特点?你该如何判断正确的类型?

首先这几道题目想必很多人都能够很好的答出来,接下来就给大家一点思路讲出与众不同的东西。

思路引导:

  1. 对于原始类型来说,你可以指出 null 和 number 存在的一些问题。对于对象类型来说,你可以从垃圾回收的角度去切入,也可以说一下对象类型存在深浅拷贝的问题。
  2. 对于判断类型来说,你可以去对比一下 typeof 和 instanceof 之间的区别,也可以指出 instanceof 判断类型也不是完全准确的。

以上就是这道题目的回答思路,当然不是说让大家完全按照这个思路去答题,而是存在一个意识,当回答面试题的时候,尽量去引申出这个知识点的某些坑或者与这个知识点相关联的东西。

思考题二:你理解的原型是什么?

思路引导:

起码说出原型小节中的总结内容,然后还可以指出一些小点,比如并不是所有函数都有 prototype 属性,然后引申出原型链的概念,提出如何使用原型实现继承,继而可以引申出 ES6 中的 class 实现继承。

思考题三:bind、call 和 apply 各自有什么区别?

思路引导:

首先肯定是说出三者的不同,如果自己实现过其中的函数,可以尝试说出自己的思路。然后可以聊一聊 this 的内容,有几种规则判断 this 到底是什么,this 规则会涉及到 new,那么最后可以说下自己对于 new 的理解。

思考题四:ES6 中有使用过什么?

思路引导:

这边可说的实在太多,你可以列举 1 - 2 个点。比如说说 class,那么 class 又可以拉回到原型的问题;可以说说 promise,那么线就被拉到了异步的内容;可以说说 proxy,那么如果你使用过 Vue 这个框架,就可以谈谈响应式原理的内容;同样也可以说说 let 这些声明变量的语法,那么就可以谈及与 var 的不同,说到提升这块的内容。

思考题五:JS 是如何运行的?

思路引导:

这其实是很大的一块内容。你可以先说 JS 是单线程运行的,这里就可以说说你理解的线程和进程的区别。然后讲到执行栈,接下来的内容就是涉及 Eventloop 了,微任务和宏任务的区别,哪些是微任务,哪些又是宏任务,还可以谈及浏览器和 Node 中的 Eventloop 的不同,最后还可以聊一聊 JS 中的垃圾回收。

小结

虽然思考题不多,但是其实每一道思考题背后都可以引申出很多内容,大家接下去在学习的过程中也应该始终有一个意识,你学习的这块内容到底和你现在脑海里的哪一个知识点有关联。小邹最近事情比较多,整理文章需要点时间,所以更新可能不会太频繁,希望大伙谅解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值