2015-06-21 73 views
2

在過去,如果我有一個功能test與內容爲什麼Chrome的控制檯不再顯示功能代碼?

function test() { 
    return true; 
} 

和我打test到控制檯,然後我會回來:

function() { 
    return true; 
} 

然而現在,它只是返回function test()沒有實際的功能代碼。我如何將它改回原來的狀態(或者至少得到功能代碼)?

+1

試試'test +「」'。 –

+1

控制檯的行爲,但他們的程序員使他們的行爲。我懷疑你可以拿回來,但我確實看到你可以點擊函數名稱,它會帶你到它的定義。 – 2015-06-21 20:07:58

+2

*「但是,它現在只是返回函數test()而沒有實際的函數代碼。」*但現在它是一個鏈接,可以將您帶到實際的函數中。 –

回答

6

此功能已被鏈接到定義函數的代碼部分。如果你關注鏈接,你仍然可以進入方法定義,只需更多的上下文。如果你想查看完整的方法定義,可以嘗試在其上調用toString,或者只是將其強制轉換爲帶有附加的字符串。

function test() { return true; } 
test.toString(); //=> "function test() { return true; }" 
test + ''; //=> "function test() { return true; }" 

Chrome DevTools是開源的,有an issues page where you can submit feature requests。如果您想要選擇打開舊的行爲,請在該處發佈問題。

0

此後,新行爲已被修改。

現在顯示該函數的前幾行。所以簡短的功能就像以前一樣顯示。但是,較長的函數會在鏈接返回到上下文來源時被截斷。

相關問題