2011-09-11 2 views
1

文字列 "_func"で始まる自分の.jsファイル内のすべてのjavascript関数を配列にリストする/戻すことはできますか?_funcで始まるすべてのjavascript関数をリストする方法

WebKitのJSCoreでは終了しました。

基本的に、ファイルに多数の機能がある場合、それらの機能をどのように列挙しますか?

あなたがループ window対象の部材を介して、それらをテストすることができ
+1

は、グローバル関数、それらの機能です?彼らは良くない。 ':)' –

+0

いいえ。ユーザーの世界の機能。 – David

+0

これらはグローバルでも、他の関数内でネストされていてもかまいません。また、オブジェクトのプロパティでもかまいません。 –

答えて

4

var functions = []; 

for(var x in window) { 
    if(typeof window[x] === "function" && x.indexOf("_func") === 0) { 
     functions.push(x); 
    } 
} 
+0

'window'が定義されているため、これはブラウザ外のWebkit環境では機能しません。 – David

+1

@Davidグローバルコードで 'this'キーワードはグローバルオブジェクトを参照するので、' window'を 'this'で置き換えることができます... –

2

あなたはwindowオブジェクトのメンバーを反復処理によってそれを行うことができます。

for (var name in window) { 
    if (name.match(/^_func/) && typeof window[name] == 'function') { 
     console.log(name); 
    } 
} 
+0

'window'はブラウザ外のWebkit環境では動作しません定義された。 – David

関連する問題