我想打印出我在特定源文件中創建的函數和類。如何打印在jQuery中手動創建的函數或類?
例如,如果我們假設;
我的函數的名字打印()
print_func(script.js)
這必須先打印功能的script.js
print_class(xyz.js)
這必須在xyz.js
打印出類是否有一個這樣的方式?
我想打印出我在特定源文件中創建的函數和類。如何打印在jQuery中手動創建的函數或類?
例如,如果我們假設;
我的函數的名字打印()
print_func(script.js)
這必須先打印功能的script.js
print_class(xyz.js)
這必須在xyz.js
打印出類是否有一個這樣的方式?
您必須檢查窗口對象的所有屬性,然後在運行腳本後再次檢查所有屬性。
例如,這是你如何讓你運行該腳本之前存在的所有功能:
before=[];for (a in window) {if (typeof(window[a])=='function') before.push(a) }
沒有,但是如果將功能分配給一個對象,你可以打印出它的所有可用的功能。適當的命名空間將幫助您輕鬆實現。
見Is there a way to print all methods of an object in javascript?
function getMethods(obj) {
var result = [];
for (var id in obj) {
try {
if (typeof(obj[id]) == "function") {
result.push(id + ": " + obj[id].toString());
}
} catch (err) {
result.push(id + ": inaccessible");
}
}
return result;
}
使用它:
alert(getMethods(document).join("\n"));