0
的我想用「來電顯示」的屬性,其定義的函數風格here呼叫者屬性爲「foo =功能()」編碼
它正常工作,這種風格函數聲明
function g() {
alert(g.caller.name) // f
}
function f() {
alert(f.caller.name) // undefined
g()
}
f()
但後來我的函數的聲明是一樣的東西
g = function() {
alert(g.caller.name) // expected f, getting undefined
}
f = function() {
alert("calling f")
alert(f.caller.name) // undefined
g()
}
f()
,我越來越不確定的(基本上沒有得到任何東西)
有沒有我可以使用呼叫者屬性而無需重寫我的代碼什麼辦法?另外,我希望我在使用和函數聲明方面沒有犯任何錯誤,因爲我對使用JS很陌生。
請參閱[JavaScript:var functionName = function(){} vs function functionName(){}](http://stackoverflow.com/questions/336859/javascript-var-functionname-function-vs-function-functionname)和[函數'名稱'文檔](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/name) – Bergi