我有一個JavaScript函數,我想給函數傳遞給另一個函數,然後:查找函數中的所有全局引用?
- 識別所有的函數中使用全局變量。
- 標識函數中使用的所有全局函數調用。 [更難]
- 已將此信息返回到obj中。
- 乾淨地做。
例如:
function foo() {
var a; // ignored
global = 2; // want 'global'
bar(global); // want 'bar'
};
var obj = identifier(foo); // Need to write this function 'identifier'! :)
console.log(obj); // Produces: {globar:2, bar = bar()};
注:我在尋找一個乾淨的方式。我曾考慮將函數轉換爲字符串,解析每行並處理它。我覺得這可能不是一個傻瓜證明計劃,會有更好的方法。如果沒有更好的方法,我會回來分享我的解決方案。
謝謝
我不認爲有任何其他方式,你必須將其轉換爲字符串。 – elclanrs
javascript函數沒有編程訪問內部使用的變量/函數。您必須以字符串形式傳遞它並解析字符串。 – Krease
什麼是原始任務?解決方案看起來很髒。 – zerkms