很有趣的一道JavaScript面试题,如果你没弄懂小心引发血案!

临近放假,无事整理一下自己的知识点,无意中看到这样一道JavaScript面试题,顿时觉得很有意思,就尝试着做了一下。。。

JavaScript面试题

 

 

尝试着做了一下,发现对于测试2的结果,出现了问题,四个都有输出值,立马检查了一下,这才想起Object.assign的意义,这里放上原文,原文做的解析很明了,我觉得对于原因没啥说的,原文链接:https://www.cnblogs.com/LuckyWinty/p/5796190.html (ps:如有涉及的版权啥的,请联系)

原文中,对于emit函数的代码,原作者并没有做参数上的考虑,我觉得这里原作者可以稍微修改一下,适当的使用一下apply,call等,这样也能在笔试的时候稍微体现下自己。。。

原作者

 

修改的

 

修改后的题目

我觉得这题,还可以变下,这样就更有意思了:

 

修改后的测试

 

如果按照修改后的题目中,1,2,两种方式分别运行,对应的测试中的带有bb样式的函数分别的输出又是如何?题目中的1,3两种写法的区别在哪?

突然觉得这么一变之后,这题目又多考了,this的问题、箭头函数的问题等,这么一想,这题就变得很有趣。

PS:无意中看到这题,就无法不想的吐槽一下面试题,其实我觉得如果你真在意那些,就应该多出好题,而不是千篇一律的网络中的题目。就像这道题目这么棒,可又有多少公司会出呢?每次面试遇到的题目,真心不想吐槽。

通过这道题,我觉得,我还是看书去吧。。。巩固一下自己。。。。。


下面是小编整理的一整套系统的web前端学习教程,加群即可免费领取!

自己整理了一份最全面前端学习资料,从最基础的HTML+CSS+JS [炫酷特效,游戏,插件封装,设计模式]到移动端HTML5的项目实战的学习资料都有整理,送给每一位前端小伙伴, 有想学习web前端的,或是转行,或是大学生,还有工作中想提升自己能力的,正在学习的小伙伴欢迎加入学习。

加Q 裙:853597293(招募中)

素材来源于网络,如有侵权,请联系该作者删除!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值