簡體   English   中英

在 console.log 中顯示錯誤的類名

[英]Wrong Class Name Showing in console.log

在 Node.js 中,我創建了一個類,在該類中我在測試期間將該類的實例記錄到控制台。

當我 console.log(anObjectFromThatClass) 時,字母“Vo”在終端輸出中該對象的左大括號之前。

通常,我希望看到大括號前面的類名,但我看到的是Vo {} 實際的類名在其名稱中的任何位置都沒有“V”或“o”,也不會擴展名稱中帶有“V”或“o”的另一個類。

我試着用谷歌搜索看看“Vo”是什么意思,但由於該搜索的所有誤報,找不到任何東西。

由於政策原因,我無法在此處發布實際課程。 我意識到我沒有給你太多內容,但是你能想出為什么在控制台記錄一個名稱中不包含“Vo”的類的實例時“Vo”會放在大括號之前的原因嗎? 它與 V8 引擎提供給 node.js 的某種類型的實時視圖有關嗎?

對於這篇文章,我嘗試創建一個重現這種行為的類,但是我創建的每個類都只是在大括號之前記錄正確的類名。 這段代碼有很多承諾和異步等待的東西,也許這可以改變由 console.log 輸出的類名?

我應該很高興這段代碼運行良好,而忘記了console.log()的特性。 但是,我仍然很好奇,所以如果你知道這個“Vo”是什么意思,請告訴我。

日志對象獲得console.log ged 時出現在記錄對象之前的字母是類的名稱,因為它在運行的代碼中表示 聽起來運行的代碼與您的源代碼不同 - 也許它以某種方式被縮小,導致運行代碼具有class Vo {或類似的東西,即使源代碼使用class MyClass {

如果代碼在沒有縮小或其他轉換的情況下運行,當對象被記錄時,您將看到MyClass {而不是Vo {

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM