很幸运遇到了一个人很好的面试官,问的问题也比较基础,不过自己可能还是基础不扎实吧,也有点紧张,问题回答的一般,主要自己会的都没有说的太好,希望下次面试会有进步,加油!
面试过程还真是步步紧逼的感觉,我自我介绍还没到一半就被打断了。。
1.js如何实现面向对象
答:面向对象有三大特性,封装,继承,多态还没说出口,他就问我如何继承
2.如何继承
我说js主要基于原型链进行继承,原型链主要是基于一个母对象,然后层层分级,原型链最顶层是一个Object原型对象,接着还没说然后下一层分为function array object string number
3.问题变成了原型链是什么
我就说了一堆 不过感觉没说好 只说了根据proto属行进行继承,形成一个链式结构,顶层是母对象,底层是自己创建的对象
求答案
4.又问我基本类型有哪些
我竟然把boolean给完全想不起来了
5.接着问我如何鉴别各大基本类型,如何鉴别null,如何鉴别array和function等
我说用typeof instance鉴定
其实最简单的应该是null === null判断
array直接用isArray
function直接用typeof
6.终于完整回答完一个问题了,又问我prototype和_proto_是什么关系
我就说前者主要在new关键字中起作