2015-10-20 42 views
-1

我正在學習JavaScript並嘗試檢查Arguments對象的調用者和calle屬性。調用者和Calee返回錯誤

這裏是我的代碼

function showFunc() { 
    var funcname = arguments.calee.name; 
    console.log(funcname); 
} 
showFunc(); 

現在顯示在控制檯說

Uncaught TypeError: Cannot read property 'name' of undefined

請告訴我,我要去哪裏錯了一個錯誤。

+0

它arguments.callee.name不arguments.calee.name – curiousgeek

+0

我認爲這是一個錯字請覈實 –

+1

如果你正在學習JS,請跳過'主叫''和'callee',因爲它們來自古老的JS形式,並沒有在現代JS中使用,因爲它們提供的信息不會導致良好的編程模式 –

回答

1

calleecalee

Warning: The 5th edition of ECMAScript (ES5) forbids use of arguments.callee() in strict mode. Avoid using arguments.callee() by either giving function expressions a name or use a function declaration where a function must call itself. more details on caller callee

Why was the arguments.callee.caller property deprecated in JavaScript?

function showFunc() { 
    var funcname = arguments.callee.name; 
    console.log(funcname); 
} 
showFunc();