临近放假,无事整理一下自己的知识点,无意中看到这样一道JavaScript面试题,顿时觉得很有意思,就尝试着做了一下。。。
JavaScript面试题
尝试着做了一下,发现对于测试2的结果,出现了问题,四个都有输出值,立马检查了一下,这才想起Object.assign的意义,这里放上原文,原文做的解析很明了,我觉得对于原因没啥说的,原文链接:https://www.cnblogs.com/LuckyWinty/p/5796190.html (ps:如有涉及的版权啥的,请联系)
原文中,对于emit函数的代码,原作者并没有做参数上的考虑,我觉得这里原作者可以稍微修改一下,适当的使用一下apply,call等,这样也能在笔试的时候稍微体现下自己。。。
原作者
修改的
我觉得这题,还可以变下,这样就更有意思了:
修改后的题目
修改后的测试
如果按照修改后的题目中,1,2,两种方式分别运行,对应的测试中的带有bb样式的函数分别的输出又是如何?题目中的1,3两种写法的区别在哪?
突然觉得这么一变之后,这题目又多考了,this的问题、箭头函数的问题等,这么一想,这题就变得很有趣。
PS:无意中看到这题,就无法不想的吐槽一下面试题,其实我觉得如果你真在意那些,就应该多出好题,而不是千篇一律的网络中的题目。就像这道题目这么棒,可又有多少公司会出呢?每次面试遇到的题目,真心不想吐槽。
通过这道题,我觉得,我还是看书去吧。。。巩固一下自己。。。。。