当我console.log()在JavaScript程序中的一个对象时,我只看到输出[object Object],这对于确定它是什么对象(甚至是什么类型的对象)没有多大帮助.
在C#中,我习惯于重写ToString()以能够自定义对象的调试器表示.我能在JavaScript中做些什么吗?
我正在尝试扩展 URL 类并添加一个属性来自定义它。但它不起作用。
let { URL } = require('url');
class MyURL extends URL {
constructor(url, base) {
super(url, base);
this.base = base;
}
}
let ur = new MyURL('abc.html','http://www.example.com/about')
console.log(ur);
Run Code Online (Sandbox Code Playgroud)
它记录
MyURL { href: ' http://www.example.com/abc.html ', origin: ' http://www.example.com ', 协议: 'http:', 用户名: '', 密码: '' ,主机:'www.example.com',主机名:'www.example.com',端口:'',路径名:'/abc.html',搜索:'',searchParams:URLSearchParams {},哈希:'' }
请注意,它没有基本属性。为什么会发生这种情况?
如何通过扩展使其具有构造函数中提供的基础属性基础URL?