2016-08-02 8 views
-2

私はnode.jsアプリケーションを持っています。私はすべてのグローバル変数とそれを定義する.jsファイルの名前も表示したいと思います。これをどのように達成するのですか?node.jsアプリケーションのjavascriptファイルごとにグローバル変数をどのように表示しますか?

+1

それがこれを行うことは不可能に聞こえるので、あなたは、おそらく正確に*あなたはどのように説明した* /あなたの目的のユースケースを記述する必要があります。 – YakovL

+0

これはデバッグのためのものです。アプリケーションの状態(すべての変数の値)とそのソースを知ることは良いことです。 – Sagar

答えて

2

windowオブジェクトはglobalは、Node.jsのバックエンドでalterntiveで、クライアント側のすべてのオブジェクトのグローバルオブジェクト&親である場合。

その後、あなたはすべてのグローバル変数を取得するために、実際に何ができるか(globalオブジェクトに添付):

Object.keys(global).forEach((k)=> { 
    console.log(`${(typeof global[k]==='function')? `"${k}" is function`:`"${k}" is object`}`) 

}) 

DEMO:globalは、クライアント側で定義されていないwindowために

デモ。

Object.keys(window).forEach((k)=> { 
 
     console.log(`${(typeof window[k]==='function')? `"${k}" is function`:`"${k}" is object`}`) 
 
    
 
    })

+0

また、変数のソース(それらが属している.jsファイル)も出力したいと思っています。このスニペットを拡張することで可能ですか? – Sagar

+0

@Sagarそれぞれのパッケージを(手動で)組み込む前後にこれらの変数をチェックしようとすることはできますが、それを自動的に行う方法はありません。 'require'がハイジャック可能でない限り、he-he(まだテストしていない) – YakovL

関連する問題