为何Firefox浏览器终端不显示JavaScript Object的类名?
Firefox中console.log仅显示Object而非自定义类名的原因及解决办法
类定义语法影响显示
若你用传统构造函数方式定义类,Firefox控制台默认只会显示Object:function MyClass() {} const obj = new MyClass(); console.log(obj); // 显示 Object改用ES6 class语法定义,控制台就能正确识别并显示类名:
class MyClass {} const obj = new MyClass(); console.log(obj); // 显示 MyClass控制台显示模式限制
Firefox控制台默认开启「精简对象显示」,会把自定义类实例简化显示为Object。点击控制台对象展开箭头旁的小齿轮图标,取消勾选「精简对象显示」,就能看到完整的类名标识。原型链配置错误
如果你手动覆盖了构造函数的原型对象但未修正constructor指向,会导致类名无法被识别:function MyClass() {} MyClass.prototype = {}; // 覆盖原型后丢失constructor指向 const obj = new MyClass();修正方式是手动恢复
constructor关联:MyClass.prototype.constructor = MyClass;
内容的提问来源于stack exchange,提问作者spacemanOG
相关产品推荐
相关产品推荐

