tza*_*chs 5 google-chrome-devtools typescript visual-studio-code
作为对此的后续问题:TypeScript override ToString()
假设我们有一个Person类,我们toString像这样覆盖:
class Person {
constructor(
public firstName: string,
public lastName: string
) {}
public toString(): string {
return this.firstName + ' ' + this.lastName;
}
}
Run Code Online (Sandbox Code Playgroud)
因此,如原始问题中所述,这在执行console.log("" + myPerson);时工作正常,但是Person在调试器中检查 的实例时toString似乎被忽略并显示默认显示。我针对 Google Chrome 的调试器(悬停在变量上)和 VS Code 的调试器(都悬停在变量上,并查看“本地”选项卡)进行了测试。
有没有办法让一个或两个调试器尊重toString覆盖?
注意:如果我使用 lambda 版本的 toString 没有关系,结果是一样的。
这可能会有所帮助:v1.69 发行说明:toString() 变量预览。
如果变量或属性具有自定义
toString()方法,则会调用它将在VARIABLES视图中渲染预览并悬停。这是对具有良好字符串表示的复杂类型的通用对象预览的改进。例如,VS Code
Range有一个toString方法,让人一目了然:
| 归档时间: |
|
| 查看次数: |
550 次 |
| 最近记录: |