[英]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.