偶遇--《坑新人--前端专用面试题》

时间:2022-04-27
本文章向大家介绍偶遇--《坑新人--前端专用面试题》,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

在网上乱逛查资料,偶然看到下面这个js面试题,

alert(a)
a();
var a=3;
function a(){
    alert(10)
}   
alert(a)
a=6;
a();

这么一个题,里面有好几个坑,很不幸,我也掉进了最后一个坑。答案也很简单,自己运行一个就知道了,

首先第一个alert(a),因为js函数中的变量提升,所以此时a的值不是undefined,而是下面所定义的那个function a()...,这个知识点就是函数的变量提升。

然后接下来是10,再接下来是3,这没什么可说的;

最后的a(),执行的结果为什么是a is not a function..?

因为在它上面有一句a=6

为什么这个题里面的坑很多,因为它里面涉及了许多js的基础知识。而且是有针对性的去考验一些知识点。例如有的人只看书看资料,觉得看懂就ok了,但却不愿意写代码,觉得都是已经看懂了的东西,还写它干嘛。

但这答案都代表了什么?

为什么这个题是专坑新人的?

希望工作经验在一年以内的前端新人,认真思考。