前端面试题总结
什么是原型和原型链
原型:每一个函数都有一个属性,这个属性名就叫prototype。这个属性的值是一个对象。
进一步阐述:prototype对象里面有一个constructor属性,这个属性的值是原本的这个函数,就是通常所说的constructor指向构造函数本身。
<script> function Child(){} Child.prototype.name = "xxx" Child.prototype.demo = function(){} </script>
<script> function Child(){} Child.prototype.name = '学习' const c = new Child() console.log(c.name) //学习 </script>
原型链:可以看成是一个链条,链条每一节之间都有一个连接点。原型链的连接点是一个叫_proto_的东西。这个_proto_是实例对象的一个属性,通过_proto_可以指向构造函数的prototype属性。
console.log(c._proto_=== Child.prototype)
怎么检测数据类型
数据类型:
1、基本数据类型:String、Number、Boolean、Null、Undefined、Symbol 、BigInt
2、引用数据类型:Object、Array、Function、Date、RegExp