前端面试题:手写用js的函数 实现和instanceof 一样的功能

一、instanceof 用于检测构造函数的 prototype 属性是否出现在某个实例对象的原型链上

  <script>       console.log(2 instanceof Number) // false       console.log([] instanceof Array) //true   </script>

A  instanceof B  意思 B 的prototype属性 是否在 A 的原型链上

二、手写

<script>         function myInstanceof (left, right) {             // 获取到对象的原型             let proto = Object.getPrototypeOf(left)             // 获取右侧的prototype对象             let prototype = right.prototype;             while(true) {                 if (!proto) return false;                 if (proto === prototype) return true;                 // 没有找到                 proto = Object.getPrototypeOf(proto);             }         }         console.log(myInstanceof([],Array)); //true </script>